在Android中重载Activity是一个很好的做法吗?
最好的方法是什么?这一点。完成,然后这个。用Intent启动activity ?
在Android中重载Activity是一个很好的做法吗?
最好的方法是什么?这一点。完成,然后这个。用Intent启动activity ?
当前回答
你可以简单地使用
finish();
startActivity(getIntent());
从Activity内部刷新Activity。
其他回答
我不认为这是个好主意……最好实现一个更干净的方法。例如,如果您的活动持有一个表单,cleaner方法可以清除表单中的每个小部件并删除所有临时数据。我想这就是您想要的:将活动恢复到初始状态。
在某些情况下,这是最好的做法,但在其他情况下,这不是一个好主意,这是环境驱动的 如果你选择这样做,使用以下是最好的方式从一个活动传递给她的儿子:
Intent i = new Intent(myCurrentActivityName.this,activityIWishToRun.class);
startActivityForResult(i, GlobalDataStore.STATIC_INTEGER_VALUE);
事情是每当你完成()从activityIWishToRun你回到你的一个活动
我看到了之前给出的使用Intent重新加载活动的答案。这些都可以工作,但你也可以使用Activity类本身给出的rebuild()方法来做同样的事情。
不写这个
//当对话框关闭时刷新主活动
Intent refresh = new Intent(this, clsMainUIActivity.class);
startActivity(refresh);
this.finish();
这可以通过写这个来实现
recreate();
重新加载整个活动可能是一项繁重的任务。 只需将需要刷新的部分代码放入(kotlin):
override fun onResume() {
super.onResume()
//here...
}
Java:
@Override
public void onResume(){
super.onResume();
//here...
}
并在需要时调用“onResume()”。
你可以简单地使用
finish();
startActivity(getIntent());
从Activity内部刷新Activity。