gpt4 book ai didi

android - 如何在 Android 中将父 Activity 置于最前面?

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

正如我们所知,startActivityForResult() 用于从父 Activity 中获取任务的结果。在这里,当我们点击 setResult() 时。它将结果返回给父 Activity。

子 Activity 意味着它应该保持持久状态。那是当用户单击子 Activity 上的按钮时。它不会完成该 Activity 并显示父 Activity 。我可能会再次从父 Activity 转到子 Activity 。如果 child 不存在,它会启动一个新的子 Activity ,否则它应该显示具有持久内容的现有子 Activity 。

编辑:

简单地说,我的父 Activity 启动了一个新的子 Activity。现在两个 Activity 都应该是活的。如何在没有完成子 Activity 的情况下调用父 Activity (换句话说,How to BringtoFront the parent Activity)?对于这种情况,

  • 您不能使用 startActivity()。因为它创建了一个新的 Activity Instance。不存在父级 Activity
  • 您不能使用 startActivityForResult()。因为它完成了子 Activity 实例。

这在 Android 中可行吗?有什么想法吗?

最佳答案

这在 Android 中是不可能的。这种情况在 Activity 生命周期中是没有规定的。

可以通过重复使用单个 Activity 并仅切换布局来模拟这种行为。您必须存储 Activity 的整个状态,然后将布局更改为应该是子 Activity 的布局,如果用户切换回父 Activity ,您将必须保存子 Activity 的状态并恢复状态父 Activity 的。您还需要自己处理返回键,以防止用户按下它并返回到启动父 Activity 的 Activity 。

一个更简单的方法是使用 tabwidget并让用户在选项卡之间切换。这使您能够使用两个不同的 Intent 初始化选项卡,并且只有当用户更改回另一个选项卡时,它们才会暂停。

关于android - 如何在 Android 中将父 Activity 置于最前面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3658285/

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