我的应用程序的活动堆栈或任务

发布于 2024-10-20 14:12:27 字数 225 浏览 6 评论 0原文

我在我的应用程序中使用 ActivityGroup ,结构如下 A> B> C(其中 A 首先显示),B 和 C 构成一个循环,如 B > C> B> C> B 并且在 B 和 C 处,如果用户按下后退按钮,则应显示活动 A(即使用户在 C 上),并且堆栈中不需要 B 和 C。

那么我如何实现 onBackPressed() 或任何其他方法来制作我的应用程序。

I am using ActivityGroup in my application, structure is as follow
A > B > C (where A display first), and B and C makes a loop, like B > C > B > C > B and at both B and C if a user press back button, activity A should be display(even if user is on C), and there no need of B and C in stack.

So how can I implement onBackPressed() or any other method to make my application.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

记忆之渊 2024-10-27 14:12:27

如果我会进入这种情况,那么我选择

  1. 创建一个活动,A将调用A或B,
  2. 然后B和C以某种方式循环,每当我从B创建C时,反之亦然,调用活动必须自行完成
  3. 最后在任何活动中,无论是 B 还是 C,当按下后退键时,它都会破坏自身

,以覆盖 B 和 C 活动中的后退键,这里是代码

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
    if ((keyCode == KeyEvent.KEYCODE_BACK))
    {
        finish();
    }
    return super.onKeyDown(keyCode, event);
}

If I would go into such situation then here is what I opt

  1. A activity is created and A will either call A or B
  2. Then B and C cycle in a manner when ever I create C from B or vice versa the calling activity must finish itself
  3. Finally On any activity whether B or C when back key is pressed it will destroy itself

for over riding back key in B and C activity here is code

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
    if ((keyCode == KeyEvent.KEYCODE_BACK))
    {
        finish();
    }
    return super.onKeyDown(keyCode, event);
}
笑叹一世浮沉 2024-10-27 14:12:27

您将需要使用 onBackPressed()

如果 A 是一个常见活动,那么将其移至菜单会更好。

You will need to use onBackPressed()

If A is a common activity it would be better if you moved it to the menu.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文