android中单个活动的实例

时间:2012-07-19 07:05:58

标签: android android-intent

我知道可以通过在清单文件中设置android:launchMode="singleInstance"来实现单个实例。但我想在运行时这样做。我认为可以通过设置 FLAG 来实现,但不能确定女巫... plzz帮助我...提前感谢。

3 个答案:

答案 0 :(得分:8)

通常,您可以结合使用Intent.FLAG_ACTIVITY_SINGLE_TOPIntent.FLAG_ACTIVITY_CLEAR_TOPIntent.FLAG_ACTIVITY_REORDER_TO_FRONTIntent.FLAG_ACTIVITY_NEW_TASK来完成您想要的工作。但是,使用哪一个(或多个)取决于您的情况。

答案 1 :(得分:3)

这就是你要找的东西

Intent intent= new Intent(context, YourActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);

更新:Manifest中也可能需要android:launchMode="singleInstance"

答案 2 :(得分:0)

singleInstance 指定将在新任务或现有任务上创建已启动或已回收的活动,并且不能将任何其他活动堆叠在其上。系统将确保从它开始的任何活动都被用于其他任务。

1个任务和1个活动。

我知道没有意图标志会阻止您的活动启动的其他活动,而无需在所有新活动的创建意图中指定标记。

所以答案是这是不可能的

之前发布的答案模仿了它的外观,但行为违背了规范。