在Android中重载Activity是一个很好的做法吗?
最好的方法是什么?这一点。完成,然后这个。用Intent启动activity ?
在Android中重载Activity是一个很好的做法吗?
最好的方法是什么?这一点。完成,然后这个。用Intent启动activity ?
当前回答
这就是我所做的重新加载活动后,从一个首选项更改返回。
@Override
protected void onResume() {
super.onResume();
this.onCreate(null);
}
这本质上导致活动重绘自身。
更新:更好的方法是调用rebuild()方法。这将导致重新创建活动。
其他回答
你可以简单地使用
finish();
startActivity(getIntent());
从Activity内部刷新Activity。
在某些情况下,这是最好的做法,但在其他情况下,这不是一个好主意,这是环境驱动的 如果你选择这样做,使用以下是最好的方式从一个活动传递给她的儿子:
Intent i = new Intent(myCurrentActivityName.this,activityIWishToRun.class);
startActivityForResult(i, GlobalDataStore.STATIC_INTEGER_VALUE);
事情是每当你完成()从activityIWishToRun你回到你的一个活动
我不认为这是个好主意……最好实现一个更干净的方法。例如,如果您的活动持有一个表单,cleaner方法可以清除表单中的每个小部件并删除所有临时数据。我想这就是您想要的:将活动恢复到初始状态。
在尝试了一段时间后,我发现重新启动一个活动并没有意想不到的后果。此外,我认为这与Android在改变方向时默认做的事情非常相似,所以在类似的情况下我没有理由不这样做。
我也有同样的问题
import android.support.v4.content.IntentCompat;
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK |IntentCompat.FLAG_ACTIVITY_CLEAR_TASK);
这个代码为我工作。 Android api 17