78

目前我正在开始一个新的Activity并呼吁finish一个当前的。

是否有任何标志可以传递给Intent可以完成当前Activity而不需要finish从代码手动调用?

4

3 回答 3

131

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

android:noHistory="true"

然后就没有必要再打电话finish()了。

<activity android:name=".ClassName" android:noHistory="true" ... />
于 2012-07-03T09:41:29.683 回答
97

像这样使用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您可以使用以防万一您要完成的活动。例如,您从 A-->B--C 出发。当你从 B-->C 出发时,你想完成活动 B,所以当你从 A-->B 出发时,你可以使用这个标志。当您进行其他活动时,该活动将自动完成。

要了解有关使用的更多信息,Intent.FLAG_ACTIVITY_NO_HISTORY请阅读:http: //developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_NO_HISTORY

于 2012-07-03T09:53:39.627 回答
6

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

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

于 2012-07-03T09:45:54.267 回答