【发布时间】:2011-10-14 14:34:51
【问题描述】:
我这辈子都不知道如何在按下后退按钮后刷新活动。我目前有一个活动 A,它触发了转到 B 的意图,而在动作 B 上,如果你按下回,我想回到动作 A,但让它自行刷新。我可以使用这个意图来刷新当前的活动:
Intent refresh = new Intent(this, Favorites.class);
startActivity(refresh);
this.finish();
但我不知道如何正确使用 onResume() 函数来刷新我的动作 A 后回到它。
【问题讨论】:
-
当前刷新方案有效的可能原因是您在标准启动模式下运行活动。这意味着每次调用 startActivity(refresh) 都会生成一个新的活动 A 实例。由于每个新实例都经过 onCreate(),因此创建这些不必要的实例会让人感觉刷新活动。要正确执行此操作,您确实应该识别 onCreate() 中负责“刷新”活动的代码并将其移至 onResume(),如下面的 Ovidiu 建议的那样。
标签: android android-intent lifecycle back-button onresume