在Android中启动新活动并完成当前活动?

时间:2012-07-03 09:37:22

标签: android android-activity flags start-activity

目前,我正在开始新的Activity并在当前的finish上调用Intent

是否有任何可以传递给Activity的标记,可以在不需要从代码中手动调用finish的情况下完成当前{{1}}?

3 个答案:

答案 0 :(得分:114)

您可以使用finish()方法,也可以使用:

android:noHistory="true"

然后无需再调用finish()

<activity android:name=".ClassName" android:noHistory="true" ... />

答案 1 :(得分:72)

像这样使用finish

Intent i = new Intent(Main_Menu.this, NextActivity.class);
finish();  //Kill the activity from which you will go to next activity 
startActivity(i);

FLAG_ACTIVITY_NO_HISTORY反其道而行之。新活动未保存在历史记录中,而OP希望之前的活动完成。

要详细了解如何使用Intent.FLAG_ACTIVITY_NO_HISTORY阅读:http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_NO_HISTORY

答案 2 :(得分:4)

FLAG_ACTIVITY_NO_HISTORY启动您希望在用户转到另一个活动后完成的活动。

http://developer.android.com/reference/android/content/Intent.html#FLAG%5FACTIVITY%5FNO%5FHISTORY