gpt4 book ai didi

android - 当我想将现有的 Activity 放在前面时, Activity 正在再次创建

转载 作者:行者123 更新时间:2023-11-29 00:56:53 26 4
gpt4 key购买 nike

我添加了 REORDER_TO_FRONT 标志以将我现有的 Activity 置于顶部,而不是创建新实例。但是它调用 Activity 的 onCreate 方法而不是 MainActivity 中的 onNewIntent。如果我在 Menifest 中添加 launchMode="singleTop",则可以正常工作。但我不想添加 singleTop,因为在某些情况下,如果用户在最小化模式下单击应用程序图标,应用程序将重新启动而不是从同一位置恢复。

    Intent intent = MainActivity.newIntent(context);
intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT | Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);

谢谢

最佳答案

您只需将 SINGLE_TOP 标志添加到您的 Intent 中,如下所示:

Intent intent = MainActivity.newIntent(context);
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);

这将从堆栈中移除所有 Activity ,返回到 MainActivity 的现有实例。它不会创建 MainActivity 的新实例或调用 onCreate()。它将在 MainActivity() 中调用 onNewIntent()

关于android - 当我想将现有的 Activity 放在前面时, Activity 正在再次创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54038374/

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