gpt4 book ai didi

android - ( Activity 娱乐) : what to do with a backstack built on invalidated data?

转载 作者:行者123 更新时间:2023-11-29 15:24:10 25 4
gpt4 key购买 nike

什么时候做什么:
1. App使用了复杂的Activity和Fragment结构
2. 我返回到同时已(部分或未)销毁的后台应用程序
3. 它让我回到最后一个屏幕,它位于工作流程的深处
4. 我需要它返回到第一个屏幕来重新初始化东西(因为它很复杂并且需要用户交互)

只是要清楚:
我在问遇到这种情况如何处理现有的Activity和Fragment堆栈
- 要采取的行动:启动一个 Intent?刚刚结束?对子结构做些什么然后完成?
- 何时执行 - 立即在 Activity.onCreate fragment 的空构造函数中执行?或者 Activity 是否足够?
- 如何最好地检测它:到目前为止我想到的是:绑定(bind)到一个包含必要数据/连接的服务,然后询问它是否已经初始化。但是绑定(bind)在 onResume 之后完成。

我不是在问任何与 UI 相关的问题。
我不要求只适用于一个特定应用程序的解决方案,所以不要要求代码。
如果您觉得这个问题含糊不清,这里有一个单句版本:“如何关闭堆栈并返回到第一个屏幕?

有关详细信息(尽可能多,至少是相关的),请参阅 https://stackoverflow.com/questions/14650342 .

最佳答案

如果您发现您的应用程序处于不一致状态并且您需要重新开始,最简单的方法是像这样重新启动您的根 Activity:

Intent intent = new Intent(this, MyRootActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();

这将从任务中清除所有 Activity 并重新启动根 Activity 。

我建议在 Activity 的 onCreate() 中执行此操作。

关于android - ( Activity 娱乐) : what to do with a backstack built on invalidated data?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14683678/

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