一次完成多项活动?

时间:2014-10-26 14:17:38

标签: android android-activity

当用户执行任务(由T1~T3表示)时,他最终到达活动B

A->T1->T2-T3->B
Z->T2->T3->B (he could start from Z which is different from A, and can skip some activities such as T1)

此时,我想清除与任务T(T1~T3)相关的所有活动。

我想我可以使用subscriber-publisher模式发送/ listento finish消息。

有可行的替代方案吗?

1 个答案:

答案 0 :(得分:2)

您可以设置Intent Flags。因此,当您启动新的Activity时,将Flag设置为CLEAR_TOP,如下所示:

Intent i = new Intent(getActivity(), A.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);

然后在背斜堆中的所有东西都将被丢弃,直到A(或Z)。因此,当A成为您的MainActivity时,后退将使您退出应用程序。

您可以在此处详细了解: http://developer.android.com/guide/components/tasks-and-back-stack.html