- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我有一个由 4 个深度级别组成的层次结构。我的个人资料具有第 2 级层次结构,这意味着在个人资料中按下后退必须始终将用户返回到第 1 层次结构级别。
我的问题是指向个人资料的链接在所有级别都可用;因此,例如,如果处于第 4 级的用户单击个人资料链接,则他的层次结构位置必须更改为第 2 级 - 而不是第 5 级。
我想一定有一种基本的方法可以做到这一点。到目前为止,我已经想出了 CLEAR_TOP 到第一级 + if(extra){startActivity(Profile)}
的组合,但这样第一级 Activity 将被重新创建 - 对吗?这就是为什么我希望你能提出更好的建议。
谢谢大家:)
UPD:澄清一下:可能没有可用的 Profile 实例,因此在这种情况下简单地清除顶部是行不通的。
最佳答案
为了防止重新创建第一级 MainActivity 而不是普通 CLEAR_TOP
我添加了 Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP
。根据documentation如果 MainActivity 已创建,则调用 onNewIntent
。
完成后,我可以切换
Intent 数据并启动任何二级 Activity
关于android - CLEAR_TOP + 开始新 Activity 。层次问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11712204/
在我的导航中,可以产生以下 Activity 序列:A,B,C,B,C,B,C, ..., D。 D Activity 包含后退按钮的覆盖方法,该方法使用 Intent.FLAG_ACTIVITY_C
我在android中执行与 Intent 标志相关的家庭任务,并创建了10个 Activity ,每个 Activity 随后调用下一个 Activity (MainActivity打开activit
我有一个由 4 个深度级别组成的层次结构。我的个人资料具有第 2 级层次结构,这意味着在个人资料中按下后退必须始终将用户返回到第 1 层次结构级别。 我的问题是指向个人资料的链接在所有级别都可用;因此
doneButton.setOnClickListener(new View.OnClickListener() { @Override public void onC
标志 FLAG_ACTIVITY_CLEAR_TOP 找到包含 Activity X 的任务并清除顶部以使 X 进入其恢复状态。标记 FLAG_ACTIVITY_SINGLE_TOP 只会在顶部保留一
我有一个几乎完成的应用程序,其 Activity 结构非常重要。有与此应用程序关联的推送通知,无论应用程序是前台/后台/非 Activity 状态,选择通知条目都应该启动特定的 Activity 。
使用 Intent 标志 "FLAG_ACTIVITY_NEW_TASK" & "FLAG_ACTIVITY_CLEAR_TOP" 和 launchMode="singleTask" 有什么区别>?以
我是一名优秀的程序员,十分优秀!