android活动生命周期

时间:2012-12-13 12:52:09

标签: android lifecycle

A有ActivityA-->ActivityB-->ActivityC。如果用户在ActivityB时推送HomeButton,然后他想重新打开应用程序,我想重新启动活动ActivityA。那就是在onStop();中调用finish();ActivityB

但是当用户从ActivityB转到ActivityC然后想要返回ActivityB时,ActivityB已经调用finish();,因此用户将出现在{ {1}}。

那么如果从ActivityA返回,如何使ActivityB可用,如果用户使用HomeButton,还可以完成它?

3 个答案:

答案 0 :(得分:4)

只需设置

android:clearTaskOnLaunch="true"

在清单中的根活动(启动器启动应用程序所使用的活动)上。然后,当用户使用您的应用程序时,只要他按下HOME键,您的任务就会被剥离回根(开始)活动。

答案 1 :(得分:0)

当您从活动B 转到活动C 时,请勿在活动B 上调用完成()

我认为你这样做

 startActivity(new Intent(Activity_B.this,Activity_C.class));
 finish();

从活动B移动到活动C时删除finish()。

Go to this stackoverflow question for more details you ll get it.

答案 2 :(得分:0)

不要在ActivityB中调用方法finish()

看看herehere

永远不要自己打电话给onStop()。这些方法是生命周期方法,由android系统调用。