Android FLAG_ACTIVITY_CLEAR_TOP 无法正常工作?

2023-12-04

我真的不明白所有这些标志是如何工作的,因为我完全按照文档所说的操作,并且它没有解决我的问题。我的活动是这样启动的:(第一)活动 A -> 活动 B -> (第二)活动 A。如果我按返回按钮,它会返回到活动 B -> 活动 A -> 退出应用程序。现在我想从 Activity B 指定的第二个 Activity A 开始,当按返回时,它将跳过 Activity B 和第一个 Activity A,并立即退出应用程序。这是代码:

从A到B:

TabActivityGroupAbs parentActivity = (TabActivityGroupAbs) ((Activity) ctx).getParent();
detailIntent = new Intent(parentActivity, B.class);
parentActivity.startChildActivity("BFromA", detailIntent);

从B到A:

TabActivityGroupAbs parentActivity = (TabActivityGroupAbs) ((Activity) ctx).getParent();
detailIntent = new Intent(parentActivity, A.class);
detailIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
detailIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
parentActivity.startChildActivity("AFromB", detailIntent);

从 B 到 A,我添加了标志FLAG_ACTIVITY_CLEAR_TOP。但它并没有澄清任何事情。当我按回时,它仍然转到活动 B,然后再次转到活动 A。我做错了什么?

似乎所有标志都不起作用。从A到B,我写的是:

detailIntent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);

它应该防止 B 被放入活动堆栈。但事实并非如此。从第二个活动A开始,按返回键仍然返回到B。

现在我应该怎么做才能退出应用程序而不是从第二个活动 A 返回到 B。

编辑:我忘了提及。从B到A,如果我调用finish()来终止活动B,那么从第二个活动A开始,当按返回时,它会返回到第一个活动A。为什么活动A这里有2个实例,尽管我设置了FLAG_ACTIVITY_CLEAR_TOP?真的很奇怪。


读一遍,flag_activity_clear_top的使用永远不会出现问题

这是关于使用的简单说明Flag_Activity_Clear_Top。

正确使用的一种内衬配方:

它总是清除调用活动和被调用活动之间的中间活动(如果有)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android FLAG_ACTIVITY_CLEAR_TOP 无法正常工作? 的相关文章

随机推荐

  • 通过gradle上传到artifactory时如何更改jar文件名

    我正在使用 gradle 来将 jar 上传到神器 我设法做到了 但是我试图更改 jar 文件名 但它并没有真正让我这么做 我使用的是shadowJar来打包 我就是这样做的 apply plugin java apply plugin m
  • 在 matlab 中搜索结构的平行行以查找常见项目

    我存储了 行 列 值 信息 key1 1 1 1 2 1 3 4 2 3 4 attribute1 2 3 4 2 5 如下 Structure A1 key row1 1 1 1 4 3 key col1 1 2 3 2 4 attrib
  • 如何在 Struts 2 中使用 标签?

    我有下面的 Struts 2 标签 我需要检查属性是否value attr row Commentaire不为空 如果不为空 则显示一个小图标 用户可以单击它并查阅属性的内容value attr row Commentaire 我怎样才能使
  • 允许多个 IP 通过 .htaccess 访问 WordPress 站点管理

    我目前有一个正在升级的 WordPress 网站 并且在 htaccess 文件中有一个维护重定向设置 我可以允许我自己的 IP 访问站点和管理员 但如何允许其他编辑者也可以访问多个 IP 访问 我目前正在使用 RewriteEngine
  • java GC 是怎么回事? PermGen 空间已满?

    我不知道我的 java 进程发生了什么 这个过程就是一个索引过程 它从一组 zip 文件中读取文档 并将它们添加到 lucene 索引中 GC日志显示只是连续运行Full GC 4959 569 Full GC 19960K gt 1996
  • 如何让进度条在浏览器导航时正常工作?

    我正在 C 上使用进度条和 Web 浏览器控件 但我不知道如何在导航时制作一个平滑的进度条 您是否能一步一步创建它 我将不胜感激 Use WebBrowser ProgressChanged Event private void WebBr
  • 从 JavaMail 消息中预取预览文本

    我正在使用 JavaMail 1 5 2 读取来自 IMAP 帐户的邮件 为了减少对主机的请求数量 我预取了一些消息数据 例如发件人 日期 消息 ID 等 Folder folder store getFolder inbox folder
  • 为什么有这么多方法来比较平等?

    如果我想比较两个值是否相等 有多种选择 例如 eq对于符号 对于数字 char equal对于角色 string equal对于字符串 eql用于符号 数字和字符串 equal对于除符号之外的所有内容 我希望到目前为止我做对了 现在 作为
  • IntelliSense 不适用于 MVC Razor cshtml 页面

    我遇到了 没有为扩展 cshtml 注册构建提供程序 我的一个使用 MVC 3 的项目出现错误 这使得自动完成功能不起作用 程序仍然运行 但是很烦人 我已经准备好 Web config 并包含所有必需的引用 事实上 我的其他具有相同配置的项
  • 如何从 NSArray 中删除具有相同值的重复对象

    我有一个NSDictinary看起来像这样 NSArray duplicates name a id 123 name c id 234 name a id 431 name c id 983 name a 038 如何删除同名的词典 例如
  • java.util.Arrays 不工作 java 8

    我最近更新为在计算机上使用 Java 8 进行 Eclipse 我之前一直在使用 Java 7 起初 更新似乎工作正常 因为我可以编译并运行一个简单的hello world 程序 然而 当我开始导入我之前正在处理的使用该类的项目时java
  • 声纳分析失败并出现 SocketTimeoutException

    当尝试从 ant 运行 Sonar 时 由于 SocketTimeoutException 我遇到了偶发故障 设置 我在 RHEL 6 机器上运行 Sonar 4 0 配置为与 Postgres 9 2 一起运行 我使用 Jenkins 1
  • 如何使用带有 POST 参数的 JSF 隐式重定向

    在我的 JSF 应用程序中 我有两个页面 list jsf and details jsf 每个页面都有自己的控制器和视图范围 在list jsf我有一个
  • 如何在 mutate 语句中对两列进行排序和粘贴?

    我希望对两列进行排序并将其粘贴到新列中 test data frame a jump b jam test gt mutate new paste sort a b 预期输出是包含三列的数据框 a jump b jam c jamjump
  • 嵌入式模式下的 JSP 单元测试

    我正在构建一个小型框架来对 JSP 进行单元测试 这些 JSP 有一些自定义标签 除此之外它们并没有什么特别的 尽管有许多可用的 Java 单元测试解决方案 但我不喜欢使用启动单独的成熟 JSP 容器 部署应用程序并通过 TCP 连接收集结
  • 如何使用 selenium python 向下滚动谷歌工作页面

    我正在尝试使用以下行向下滚动职位发布 但有时会给出正确的结果 向下滚动到末尾 有时则不会 html driver find element by tag name html time sleep 5 html send keys Keys
  • 为什么 strlen 的 REPNE SCASB 实现可以工作?

    为什么这段代码有效 http www int80h org strlen 表示字符串地址必须位于EDI为 注册scasb工作 但这个汇编功能似乎并没有做到这一点 汇编代码为mystrlen global mystrlen mystrlen
  • R:将数据集变量中的计数“反累积”到各个行[重复]

    这个问题在这里已经有答案了 我是 R 初学者 花了几个小时尝试解决问题 我会 反累积 数据集中变量的值 获得行中的各个观察值 我认为最好用一个例子来解释这一点 我会从 Variable 1 Variable 2 Count GROUP1 A
  • 将日期作为因子错误转换为日期

    我在计算从 csv 文件导入的日期时遇到问题 我想要做的是在因素 DateClosed 中获取该日期并在日期字段 a 中生成日期 例如 如果 a 203 我希望日期等于 DateClosed 203 但是 我在使用下面列出的代码时遇到了问题
  • Android FLAG_ACTIVITY_CLEAR_TOP 无法正常工作?

    我真的不明白所有这些标志是如何工作的 因为我完全按照文档所说的操作 并且它没有解决我的问题 我的活动是这样启动的 第一 活动 A gt 活动 B gt 第二 活动 A 如果我按返回按钮 它会返回到活动 B gt 活动 A gt 退出应用程序