gpt4 book ai didi

Android 在后台启动另一个 Activity 之前开始一个新 Activity ,并清除旧 Activity 之上的 Activity

转载 作者:搜寻专家 更新时间:2023-11-01 08:34:23 26 4
gpt4 key购买 nike

我遇到了一个 Activity backstack 问题。假设我的后台有 5 个 Activity :比如 Activity A、 Activity B、 Activity C、 Activity D 和 Activity E。在某些时候,我希望用户在按下 Activity E 的后退按钮时转到另一个 Activity G。 Activity G 需要放在 Activity B 之后,所以我希望 Activity C 和 Activity D 从 backstack 中移除(否则用户会转到 Activity D)。

当前情况A --> B --> C --> D --> E

首选情况 A --> B --> G

现在我明白我可以使用 FLAG_ACTIVITY_CLEAR_TOP 当 Activity G 已经在后台时。但 Activity 不是。此外,我不想使用 FLAG_ACTIVITY_NEW_TASK,因为这样 Activities A 和 B 也会消失。

另一种方法是放置

android:noHistory="true"

在 Activity C 和 D 的 list 中,但这会使用户在每次用户从 Activity C 或 D 中按下后退按钮时返回到 Activity B。

谁能给我指出正确的方向?

最佳答案

You can try below

C ----startActivityForResult----------> D ---startActivityForResult--> E

handle onActivityResult with result accordingly to finish Activities, make sure its chained action calls

关于Android 在后台启动另一个 Activity 之前开始一个新 Activity ,并清除旧 Activity 之上的 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37942006/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com