在调用新活动时从 Back Stack 中删除所有活动 [重复]

Posted

技术标签:

【中文标题】在调用新活动时从 Back Stack 中删除所有活动 [重复]【英文标题】:Remove all activities from Back Stack while calling a New activity [duplicate] 【发布时间】:2011-10-30 14:31:18 【问题描述】:

可能重复:android: Clear the back stack

当我调用 back_Stack 中不存在的新 Activity 时,有什么方法可以清除 back_Stack?(我使用的是 Api vesion 8).. 请帮助?

【问题讨论】:

这里是可以为您解决问题的链接。 Back Stack Activities 类似于Android: Clear the back stack和How to clear the Android Stack of activities? 【参考方案1】:

在不知道您的确切要求的情况下,很难给您一个准确的答案,但是您可以使用tasks来实现您所需要的。如果您有 3 个名为 A、B 和 C 的活动。如果您在 Manifest 中将 C 设置为与 A 和 B 具有不同的 taskAffinity,则为 C 使用单独的后退堆栈。如果您随后为 A 设置 clearTaskOnLaunch="true"在清单中,当用户离开该任务时,返回堆栈将被清除。因此,应用程序启动加载活动 A。用户单击启动 B 的按钮。如果用户现在单击返回,则返回到 A。如果用户从 B 中单击按钮启动 C,则返回 A 的任务堆栈& B 被清除,如果用户随后回击,他们将被带回A。

可以在Handling Affinities 和Clearing the back stack 找到对此的完整解释。

【讨论】:

以上是关于在调用新活动时从 Back Stack 中删除所有活动 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

当所有选择框都有一个名称时,如何从 DOM 添加/删除选择框,以便在提交时从活动选择框获得值?

Android - 在单个活动应用程序中使用工具栏按钮弹出 Back Stack

满足特定条件时从列表创建新列表

单击时从 ListView 继续进行新活动

Back Stack 未维护 - 如何防止 Fragment 被破坏?

在 Android 运行时从 xml 文件设置视图