我有一个 Activity 可以监听偏好更改并重新加载应用程序。我正在使用 recreate()
来做到这一点。但我不知道如何通过它传递参数,所以我求助于手动 Activity 重新加载。
Intent intent = getIntent();
finish();
// add in the arguments as Extras to the intent
startActivity(intent);
这具有我想要的行为,但重新创建 Activity 对用户来说并不顺利,因为他们会看到 Activity 被终止并重新启动相同的 Activity 。我希望用户不知道该 Activity 已重新启动。所以,我的问题是我是否可以使用 recreate()
方法并仍然通过它传递参数。
最佳答案
调用recreate前可以设置activity的intent数据
getIntent().putExtra("RECREATE_DATA", "Some Data");
recreate()
因为当您重新创建 Activity 时使用相同的 Activity 实例, Intent 中的数据在重新创建后仍然存在。
关于android - 重新创建 Activity 并传递参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38757927/