android - 重新启动任务中的所有 Activity

标签 android android-intent android-activity

我正在为我的应用实现一个允许用户切换主题的设置,当用户切换主题时,他将进入设置 Activity,任务中的 Activity 上方将是主屏幕。

我想要当前的 activity在主题更改后重新启动,但我也希望主屏幕重新启动,因此当用户从设置页面返回时,他将看到带有新 Activity 的主屏幕。

重新启动当前 activity is easy , 但我如何强制以前的 activities在当前 task也要重启?

我试过添加 FLAG_ACTIVITY_CLEAR_TOP/FLAG_ACTIVITY_CLEAR_TASKintent ,但它会从 task 中删除这些 Activity ,所以当我从设置中返回时,我返回到主屏幕而不是我的应用程序主屏幕。

谢谢。

最佳答案

一种可能的方法是在用户返回主 Activity 时重新启动它。如果您使用 startActivityForResult 打开您的 Preferences Activity ,那么,当完成该 Activity 时,您可以使用 setResult 告诉主 Activity 是否需要重新启动。最后,在主 Activity 的 onActivityResult 中,您可以查看传递的结果并在必要时重新启动主 Activity 。

关于android - 重新启动任务中的所有 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12263272/

相关文章:

android - 单击按钮时如何提供 SlideUp 效果

android - 在android中的 Activity 之间传递非原始类型的数据

android - Google 分析多个 Android Activity

android - 如何检查一个 child 是否存在于 firebase 中?

java - 我在 startActionMode() 方法中遇到错误

android - Intent 自定义权限不起作用

android - 执行整个代码后显示 Activity 屏幕

java - 生成阿拉伯语二维码

android - 在 Android 中设计 ListView

java - Android - 将图像附加到电子邮件