首页 > 解决方案 > 调用 startActivity(intent) 不会重新创建 Activity

问题描述

当我的应用程序启动时,会创建 HomepageActivity。还有另一个活动 Activity2,用户可以随时导航到该活动。

从 Activity2,我创建了一个 Intent 以使用一些数据打开 HomepageActivity 并调用startActivity(intent). 需要这个 Intent 数据来为 HomepageActivity 的 Fragment 设置一些数据,Fragment.onCreate但是在调用 startActivity 之后,HomepageActivity 不会重新创建。它只是调用onResume并且片段不会从意图中获取数据。

从调试来看,意图确实包含正确的数据,但每次调用onResume时检查意图是没有意义的。onResume如果 HomepageActivity 已经创建,如何重新创建或以其他方式将数据传递给它?

标签: android

解决方案


这将解决您的问题。

Intent intent = new Intent(this, SecondActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);// restarts the activity
startActivity(intent);

推荐阅读