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

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


当前回答

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

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

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

其他回答

我建议使用NavUtils.navigateUpFromSameTask(),它很简单,你可以从谷歌开发人员那里学习。希望我能帮到你!

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

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

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

除了上面提到的答案,还有另一种方法,假设你有两个类,A类和B类。

类A你做了一些活动,比如选择复选框,打印出一些数据和意图到类B。 类B,你想传递多个值给类A,并保持类A之前的状态,你可以使用,尝试这种替代方法或下载源代码来演示这一点

http://whats-online.info/science-and-tutorials/125/Android-maintain-the-previous-state-of-activity-on-intent/

or

http://developer.android.com/reference/android/content/Intent.html

intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

这将使您到前一个活动保持其堆栈,并从堆栈中清除它之后的所有活动。

例如,如果堆栈为A->B->C->D,并且您以该标志开始B,则堆栈将为A->B

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

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

      return super.onOptionsItemSelected(item);
 }

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