【发布时间】:2016-04-25 12:14:47
【问题描述】:
我想为我在应用程序中启动的每个Activity 保留一个单个实例。 launchMode singleTask 是一个选项,但它仅适用于一个 Activity。
我想要
- 如果没有实例并调用它,则启动
Activity。 - 如果该
Activity的任何其他实例已经存在,那么 该实例将被带到前面而不创建新实例 其中Activity。 - 此属性将应用于多个
Activity。 - 没有
Activity确实保证它始终位于历史堆栈的顶部。
到目前为止我的工作:
我收到了许多对我的案例无效的建议,所以我想指出这些,以免其他人给出相同的建议。
- 我已将
launchMode设置为singleTop,这仅在Activity位于历史堆栈顶部时才有效。 onNewIntent() 只有在Activity位于历史堆栈顶部时才会被调用。在我的情况下,Activity可能位于堆栈中的任何位置。所以这行不通。
【问题讨论】:
-
在每个活动中使用 singleTop
标签: android android-activity launchmode