Fragment切換時的生命週期

如果打開自動旋轉,橫屏和豎屏切換之後,Activity會銷燬然後重新創建。

這樣Fragment會重新創建,導致Fragment內容重疊。

 

解決方案:Activity 添加

android:configChanges="orientation|screenSize"

 Fragment生命週期圖

 

a 通過Add hide show方式切換Fragment

Fragment第一次被顯示調用Create,CreateView,Start,Resume等生命週期方法,以後簡單的切換都不會再調用生命週期方法

只會調用onHiddenChange方法。

 

b 通過replace方法切換Fragment

被取代的Fragment調用Pause,Stop,DestroyView,Destroy等生命週期方法。

顯示的Fragment調用Create,CreateView,Start,Resume等方法。

 

c 通過ViewPager的方式切換

無論創建或者切換,setUserVisibleHint總是先被調用,

不顯示的Fragment可能會被pause, stop,destroyView,顯示的時候走CreateView,start Resume等生命週期。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章