我想在android应用程序上做一些简单的事情。 怎么可能回到以前的活动。

我需要什么代码回到以前的活动


当前回答

使用intent启动第二个活动(根据您的需求使用startActivity或startActivityForResult)。现在当用户按下后退按钮时,上面的当前活动将被关闭,上一个活动将被显示。

现在假设您有两个活动,一个用于为用户选择一些设置,如语言、国家等,选择后,用户单击Next按钮进入登录表单(例如)。现在如果登录不成功,那么用户将处于登录活动中,如果登录成功怎么办?

如果登录成功,那么您必须启动另一个活动。这意味着将启动第三个活动,并且仍然有两个活动正在运行。在这种情况下,使用startActivityForResult会很好。当登录成功时,将OK数据发送回第一个活动并关闭登录活动。现在,当接收到数据时,然后使用finish启动第三个活动并关闭第一个活动。

其他回答

您是否想要控制后退按钮的行为?您可以通过以下两种方法之一重写后退按钮(以转到特定的活动)。

Android 1.6及以下版本:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)  {
    if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
        // do something on back.
        return true;
    }

    return super.onKeyDown(keyCode, event);
}

或者如果你只支持android2.0或更高版本:

@Override
public void onBackPressed() {
    // do something on back.
    return;
}

详情请访问:http://android-developers.blogspot.com/2009/12/back-and-other-hard-keys-three-stories.html

首先,你需要记住的是,如果你想回到前一个活动。然后当使用Intent转到另一个活动时,不要调用finish()方法。

在此之后,您有两种方法从当前活动返回到前一个活动:

简单地调用:

finish()

OR

super.onBackPressed();
 @Override
 public boolean onOptionsItemSelected(MenuItem item) {
      int id = item.getItemId();

      if ( id == android.R.id.home ) {
          finish();
          return true;
      }

      return super.onOptionsItemSelected(item);
 }

尝试一下,它既可以在工具栏返回按钮作为硬件返回按钮。

如果你想去只是想去以前的活动使用

finish();

OR

onBackPressed();

如果你想去第二个活动或以下使用以下:

intent = new Intent(MyFourthActivity.this , MySecondActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
//Bundle is optional
Bundle bundle = new Bundle();
bundle.putString("MyValue1", val1);
intent.putExtras(bundle);
//end Bundle
startActivity(intent);

试着活动#完成()。这或多或少是后退按钮默认的功能。