我想在android应用程序上做一些简单的事情。 怎么可能回到以前的活动。
我需要什么代码回到以前的活动
我想在android应用程序上做一些简单的事情。 怎么可能回到以前的活动。
我需要什么代码回到以前的活动
当前回答
通过单击返回按钮从一个活动返回到另一个活动,使用下面给出的代码,使用当前活动名称,然后使用目标活动。
@Override
public void onBackPressed() {
// do something on back.
startActivity(new Intent(secondActivity.this, MainActivity.class));
return;
}
其他回答
如果你已经正确设置了AndroidManifest.xml文件的父活动,你可以使用:
NavUtils.navigateUpFromSameTask(this);
这是你的儿童活动。
您是否想要控制后退按钮的行为?您可以通过以下两种方法之一重写后退按钮(以转到特定的活动)。
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
你可以试试这个:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
finish();
return true;
}
return super.onKeyDown(keyCode, event);
}
如果你想去只是想去以前的活动使用
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);
除了上面提到的答案,还有另一种方法,假设你有两个类,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