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

Ber*_*tuz 31 android android-lifecycle android-fragments

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

所以,当我回到我的活动,在Fragment的回调onCreate,oncreateview等等被调用.但是Fragment的onDestroy回调都没有被调用过!似乎在"onStop"之后,片段立刻被破坏了.这是正常的行为吗?是不是因为Activity没有召唤它而被摧毁onDestroy

inv*_*igo 39

看看这个问题:为什么不保证调用onDestroy()?

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

  • 谢谢你的链接!我已经意识到了这一点,但我仍然想知道是否因为这个而没有调用`Fragment`的`onDestroy`.所以,你确认没有调用`Fragment`的`onDestroy`,因为它的`Activity`的`onDestroy`也没有被调用.我做对了吗? (3认同)