在Android中重载Activity是一个很好的做法吗?

最好的方法是什么?这一点。完成,然后这个。用Intent启动activity ?


当前回答

Android包括一个进程管理系统,它可以处理活动的创建和销毁,这在很大程度上抵消了手动重新启动活动的任何好处。你可以在应用基础上看到更多的信息

好的做法是确保你的onPause和onStop方法释放任何你不需要保留的资源,并使用onLowMemory将你的活动需求减少到绝对最小。

其他回答

我不认为这是个好主意……最好实现一个更干净的方法。例如,如果您的活动持有一个表单,cleaner方法可以清除表单中的每个小部件并删除所有临时数据。我想这就是您想要的:将活动恢复到初始状态。

我也有同样的问题

import android.support.v4.content.IntentCompat;

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK |IntentCompat.FLAG_ACTIVITY_CLEAR_TASK);

这个代码为我工作。 Android api 17

我需要在我的一个应用程序中更新消息列表,所以我只是在关闭我所在的对话框之前刷新了我的主UI活动。我相信还有更好的方法来实现这一点。

// Refresh main activity upon close of dialog box
Intent refresh = new Intent(this, clsMainUIActivity.class);
startActivity(refresh);
this.finish(); //

对于那些不想看到重现()方法后闪烁的人,只需使用

 finish();
 overridePendingTransition(0, 0);
 startActivity(getIntent());
 overridePendingTransition(0, 0);

简单地使用

this.recreate();

这将触发活动中的onCreate方法