gpt4 book ai didi

android - 多个 Activity 实例和 FLAG_ACTIVITY_REORDER_TO_FRONT

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:08:26 24 4
gpt4 key购买 nike

假设当前任务栈有4个Activity实例A0、A1、B0、C0,C0在栈顶。 A0、A1是Activity A的实例,B0是Activity B的实例,C0是Activity C0的实例。

现在 C0 使用 FLAG_ACTIVITY_REORDER_TO_FRONT 创建一个 Intent 并启动 Activity A:

Intent intent = new Intent(this, A.class);
intent.setFlag(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(intent);

我的问题是,哪个实例会被放在前面,A0 还是 A1?任务栈会变成A0、B0、C0、A1还是A1、B0、C0、A0?

谢谢。

最佳答案

经验证据表明它将最近的实例带到了前面。在您的示例中,如果 Activity 堆栈像这样开始:

 A0, A1, B0, C0 (front of task)

并且 C0 以 Intent.FLAG_ACTIVITY_REORDER_TO_FRONT 开始 A,实例 A1 被带到前面, Activity 堆栈现在看起来像这样:

A0, B0, C0, A1

当你使用这个标志时,Android 会寻找这个 Activity 的一个实例(从任务的前面开始,扫描到任务的后面/根)。它找到的第一个实例将被带到前面。如果它在 Activity 堆栈中找不到任何实例,它将创建一个新实例。

关于android - 多个 Activity 实例和 FLAG_ACTIVITY_REORDER_TO_FRONT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4949898/

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