为什么在PAD中返回父活动时调用onDestroy?

时间:2014-04-24 02:12:31

标签: android android-activity android-lifecycle

现在有一个奇怪的问题,我有两个Activity,A和B,第一个从A跳到B,B输入一些属性,完成后,B返回A,并调用B.finish()方法,但问题是当B完成时,A方法自动调用onDestroy并重新onCreate,这是怎么回事?

这种现象发生在使用平板电脑时,并不会出现在手机的使用上。 PAD内存足够大。并设置android:screenOrientation="portrait"

A和B活动使用与不同viewGroup相同的baseActivity。所以不能使用android:launchMode="singleTop"

B之后还尝试打开C Activity,然后完成C,那么B正常onResume,没有执行onDestroy,为什么只有在B返回A onDestroy A会引导它?

生命周期如下:

A onCreate
A onStart
A onResume
------------------
A onPause
B onCreate
B onStart
B onResume
A onStop
-------------------call B.finish()
B onPause
A onDestroy
A onCreate
A onStart
A onResume
B onStop
B onDestroy

不应该出现onDestroy啊。

1 个答案:

答案 0 :(得分:0)

请查看以下链接中的图表。 http://developer.android.com/reference/android/app/Activity.html当你打电话给finish()时,自从你完成了这项活动后,它会在电话会议之后召唤毁灭。