片段生命周期:何时不调用“ondestroy”和“ondestroyview”?

时间:2013-06-19 15:46:08

标签: android android-fragments android-lifecycle

想象一下这种情况:Fragment中有一个Pager。我尝试切换到其他应用程序,以便Activity拥有我的寻呼机(和我的片段)将被停止并最终暂时销毁。

因此,当我回到我的活动时,会调用Fragment的回调onCreateoncreateview等。但是Fragment的onDestroy回调都没有被调用过!似乎在“onStop”之后,片段立刻被破坏了。这是正常的行为吗?可能是因为Activity在没有调用onDestroy的情况下被销毁了吗?

1 个答案:

答案 0 :(得分:38)

看看这个问题:Why implement onDestroy() if it is not guaranteed to be called?

基本上,只有在调用finish()时才能保证调用onDestroy()。否则,在系统认为必要之前,可能不会调用onDestroy()。您可能希望将“关闭”逻辑放在onPause()或onStop()中。