0

这是一个非常基本的问题,我有几个屏幕,现在当您从一个屏幕转到另一个屏幕时,您可以按返回并循环返回所有窗口。

我宁愿当你按下它时,它会把你带到一个特定的窗口,例如:

  • 菜单屏幕---->用户点击信息
  • 信息屏幕---->用户点击骑行信息
  • 乘车信息---->用户点击返回
  • 信息屏幕

现在这与分层父级有关,这会定义它返回的位置吗?

我的问题的第二部分是,如果我没有任何资源可以发布或存储信息以进行恢复,当用户暂停我的应用程序时我应该怎么做?目前,如果您返回菜单屏幕并重新选择应用程序,它将启动一个新实例而不是恢复。我只是简单地实现:

    @Override
public void onPause() {
    super.onPause();  // Always call the superclass method first
}

@Override
public void onResume() {
    super.onResume();  // Always call the superclass method first
}

抱歉,如果这有点基本!

4

3 回答 3

1

这里没有基本问题:)

最简单的方法是重写 onBackPress() 函数。

样本 :

@Override public void onBackPressed() { //在这里做你想做的事情 }

为了在用户离开应用程序时保存变量,您需要覆盖 onSaveInstanceState(Bundle bundle)

@Override protected void onSaveInstanceState(Bundle bundle) { super.onSaveInstanceState(outState); bundle.putInt("样本", 1); }

于 2013-03-20T13:21:47.300 回答
1

您可能希望在打开新活动Android Dev时为您的意图设置 FLAGS

像这样的东西-

Intent a = new Intent(this,A.class);
a.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(a);
于 2013-03-20T13:22:24.363 回答
1

对于您的两个部分:

1) 让 Android 处理后退按钮几乎总是最好的,其顺序由后退堆栈决定:请参阅此处了解说明。如果您想要分层导航,我建议您查看up按钮 - 请参阅此开发人员页面以获得有关如何使用不同导航工具的良好说明。

此外,如果您不想让活动出现在您的后退堆栈中,您可以android:noHistory="true"在清单中设置该属性,这意味着用户无法使用后退按钮返回到它。

2)如果用户离开了你的应用程序,它会自动暂停,你不需要实现onPauseonResume发生这种情况。但是,操作系统也可以终止收集。如果发生这种情况,那么当用户再次从启动器打开它时,它将重新启动。应用程序的任何先前运行的实例都应自动打开。

于 2013-03-20T13:23:06.660 回答