如何从堆栈历史记录中清除特定活动?

2024-02-17

假设我有一个应用程序,其中包含名为 A、B、C、D 的活动。现在,考虑 A 已作为根活动启动,B 已从 A 启动,C 已从 B 启动,D 已从 C 启动。现在我在活动 D 中有一个名为“删除”的按钮。如果假设,我按下活动 D 中的“删除”按钮,然后活动 B 和活动 C 应该从历史堆栈中删除。在按活动 D 中的后退键时,应显示活动 A 而不是 C。我不知道如何实现这一点。谁能帮我解决这个问题?


我不确定您是否可以直接以编程方式从历史记录中删除活动,但如果您使用startActivityForResult()代替startActivity(),然后根据您的活动的返回值,您可以立即finish()前驱活动来模拟您想要的行为。通过在所有活动中使用此方法,您可以将此行为级联到活动堆栈,以允许您从活动 D 转到活动 A。

我知道这不是您的情况,但将来如果您在开始活动之前知道您不希望前任留下来,您可以致电finish()之后立马startActivity().

请参阅“新屏幕的使用寿命”部分Android 中的常见任务以及如何执行这些任务 http://developer.android.com/guide/appendix/faq/commontasks.html

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

如何从堆栈历史记录中清除特定活动? 的相关文章

随机推荐

  • sqlite3,IntegrityError:插入值时唯一约束失败

    为了防止我的数据库变得太大 我希望 sqlite 只插入尚未插入的值 我做了一些搜索 并认为最好的方法是使用 UNIQUE 约束 在我看来 插入不唯一的值时 sqlite 会崩溃 如何避免此错误并继续下一次提交 下面是一些相关代码 sql
  • Android 的自签名证书和 Loopj

    我正在尝试使用loopj http loopj com android async http制作async HTTP要求 效果很好 除了当我尝试使用自签名证书访问 https 网站时 我明白了 javax net ssl SSLPeerUn
  • 无法从 ArrayList 中删除[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions import java util c
  • .git/branches 文件夹的用途是什么?

    我一直认为 git branches目录用于遗留目的 并且 git 曾经使用该目录 但现在使用 git refs目录代替 这是真的 如果没有 那么该目录的目的是什么 因为我从未见过它被使用或引用 EDIT 我正在使用 git 版本 1 7
  • Cassandra静态列设计[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 静态列如何在 cassandra 内部存储 有人可以发布一个示例来讨论 cassandra 中静态列的
  • simd_float4x4 列

    我想平移平面而不旋转图像 出于某种原因 我的图像正在旋转 var translation matrix identity float4x4 translation colum 0 2 let transform simd mul curre
  • 合并排序初学者问题

    我现在有一个关于归并排序算法的问题 因为在原始算法中 将要排序的列表分为两个子列表并递归排序 现在我想将长度为 n 的列表分为 3 个长度为 n 3 的子列表 然后对这三个子列表进行递归排序 然后合并 怎么样 我只是简单地修改了原始算法 将
  • 如何在react-google-maps中弯曲折线?

    我是 React 新手 一直在使用 React google maps 包 我正在尝试弯曲连接两个地方的折线 在浏览完文档后 我尝试将曲线折线函数合并到 可编辑 属性下 这是弯曲折线的函数 var map var curvature 0 4
  • R: lapply 函数 - 跳过当前函数循环

    我正在对多个文件的列表使用 lapply 函数 有没有一种方法可以让我跳过当前文件上的函数而不返回任何内容 而直接跳到文件列表中的下一个文件 准确地说 我有一个 if 语句来检查条件 如果该语句返回 FALSE 我想跳到下一个文件 lapp
  • iTunes Connect:您的应用程序“*”(Apple ID:*)有一个或多个问题 - 电子邮件发送到整个用户列表、所有试飞用户,无论是什么应用程序

    今天 我通过 Xcode 向应用程序商店提交了一个新的测试应用程序 以便在 ItunesConnect 中查看 应用程序提交成功 但二进制文件在大约一分钟后被 ITC 拒绝 PNG 中具有 Alpha 通道的 AppIcons 存在问题 我
  • 如何在平面文件连接管理器上重新配置列信息?

    我有一个正在从平面文件读取数据的平面文件源 我们最近在此平面文件中添加了一个新列 平面文件数据被插入到数据库表中 为了适应目标组件中的新字段 我使用了ALTER TABLE语句将新列添加到表中 这是我所做的唯一改变 平面文件和目标组件之间的
  • 如何在sql server中获取分隔符之前的第一个值

    在其中一列中 我得到 2 个值 它们之间有一个分隔符 如何提取两个值 我有类似这个专栏的东西TRN02 is 115679 5757 我需要再次将分隔符之前和分隔符之后的值分成两个单独的列 有人可以帮我解决这个问题吗 您可以使用SUBSTR
  • 如何使用 Laravel 4.1 在字符串中查找#hashtags?

    我目前正在尝试过滤输入字符串以查找用户希望与其照片一起显示的单个主题标签 但是 我目前在数据库中插入的内容不正确 最好的情况是每个主题标签都保存在带有照片 ID 的新数据库行中 但是 我真的不知道该怎么做才能实现这一目标 hashtag n
  • 如何从带有 Array 属性的 Action 方法返回 Json?

    我正在尝试从操作方法返回一些 json 数据 我有一个员工对象 如下所示 public class Employee public int EmployeeID get set public string FirstName get set
  • JQuery UI 模式对话框使用 100% CPU

    当我在 IE8 中打开模态 JQuery 对话框时 我的 CPU 使用率达到 100 不 实际上是 50 但这是一个核心的 100 如果我破坏开发人员工具 似乎会触发很多调整大小事件 我不进行任何自愿调整大小 有其他人遇到过这个问题并且知道
  • 超时功能

    我想编写一个代码 要求输入用户名 但时间限制为 15 秒 如果用户超出限制并且无法输入名称 或任何字符串 则代码将终止并显示 超时 按摩 否则应保存名称并显示 谢谢 按摩 我曾尝试过这样的操作 但它是错误的并且不起作用 请给我一个解决方案
  • Xt 错误:如果使用默认显示,则无法打开显示

    Overview 我正在尝试让 XQuartz 在 OSX 上工作 这样我就可以通过 Docker 进行 X11 转发 我正在跟进此处的说明 https learning continuous deployment github io do
  • 如何将 Geodjango 与 Google Maps API 3 集成?

    我有一个包含多个字段的 geodjango 查询集 但只想使用user name and location 一个点字段 我想将其用作谷歌地图 API 3 中的标记 请耐心等待 因为我不懂 JavaScript 而且我有一系列问题 将此视为新
  • 复制工作表中的所有内容vba

    Copy wb Sheets wsSource Name Range A1 W79 Copy Paste Special wbTarget Sheets Sheet1 Range A1 W79 PasteSpecial xlValues w
  • 如何从堆栈历史记录中清除特定活动?

    假设我有一个应用程序 其中包含名为 A B C D 的活动 现在 考虑 A 已作为根活动启动 B 已从 A 启动 C 已从 B 启动 D 已从 C 启动 现在我在活动 D 中有一个名为 删除 的按钮 如果假设 我按下活动 D 中的 删除 按