天天看點

Fragment的生命周期

Fragment的生命周期和Activity類似,但比Activity的生命周期複雜一些,基本的生命周期方法如下圖:

生命周期

Fragment的生命周期

解釋如下:

onAttach():Fragment和Activity相關聯時調用。可以通過該方法擷取Activity引用,還可以通過getArguments()擷取參數。

onCreate():Fragment被建立時調用。

onCreateView():建立Fragment的布局。

onActivityCreated():當Activity完成onCreate()時調用。

onStart():當Fragment可見時調用。

onResume():當Fragment可見且可互動時調用。

onPause():當Fragment不可互動但可見時調用。

onStop():當Fragment不可見時調用。

onDestroyView():當Fragment的UI從視圖結構中移除時調用。

onDestroy():銷毀Fragment時調用。

onDetach():當Fragment和Activity解除關聯時調用。

上面的方法中,隻有onCreateView()在重寫時不用寫super方法,其他都需要。

因為Fragment是依賴Activity的,是以為了講解Fragment的生命周期,需要和Activity的生命周期方法一起講,即Fragment的各個生命周期方法和Activity的各個生命周期方法的關系和順序,如圖:

LifeCycle

作者:JYGod丶

------------------越是喧嚣的世界,越需要甯靜的思考------------------

合抱之木,生于毫末;九層之台,起于壘土;千裡之行,始于足下。

積土成山,風雨興焉;積水成淵,蛟龍生焉;積善成德,而神明自得,聖心備焉。故不積跬步,無以至千裡;不積小流,無以成江海。骐骥一躍,不能十步;驽馬十駕,功在不舍。锲而舍之,朽木不折;锲而不舍,金石可镂。蚓無爪牙之利,筋骨之強,上食埃土,下飲黃泉,用心一也。蟹六跪而二螯,非蛇鳝之穴無可寄托者,用心躁也。