Fragment 生命周期介紹

Fragment每個生命周期方法的意義彻况、作用(注意紅色的不是生命周期方法):

方法名 說明
setUserVisibleHint(): 設(shè)置Fragment可見或者不可見時會調(diào)用此方法撕瞧。在該方法里面可以通過調(diào)用getUserVisibleHint()獲得Fragment的狀態(tài)是可見還是不可見的,如果可見則進行懶加載操作霹期。
onAttach(): 執(zhí)行該方法時,F(xiàn)ragment與Activity已經(jīng)完成綁定,該方法有一個Activity類型的參數(shù)雕擂,代表綁定的Activity冰更,這時候你可以執(zhí)行諸如mActivity = activity的操作产徊。
onCreate(): 初始化Fragment∈裣福可通過參數(shù)savedInstanceState獲取之前保存的值舟铜。
onCreateView(): 初始化Fragment的布局。加載布局和findViewById的操作通常在此函數(shù)內(nèi)完成奠衔,但是不建議執(zhí)行耗時的操作谆刨,比如讀取數(shù)據(jù)庫數(shù)據(jù)列表。
onActivityCreated(): 執(zhí)行該方法時归斤,與Fragment綁定的Activity的onCreate方法已經(jīng)執(zhí)行完成并返回痊夭,在該方法內(nèi)可以進行與Activity交互的UI操作,所以在該方法之前Activity的onCreate方法并未執(zhí)行完成官册,如果提前進行交互操作生兆,會引發(fā)空指針異常。
onStart(): 執(zhí)行該方法時膝宁,F(xiàn)ragment由不可見變?yōu)榭梢姞顟B(tài)鸦难。
onResume(): 執(zhí)行該方法時,F(xiàn)ragment處于活動狀態(tài)员淫,用戶可與之交互合蔽。
onPause(): 執(zhí)行該方法時,F(xiàn)ragment處于暫停狀態(tài)介返,但依然可見拴事,用戶不能與之交互沃斤。
onSaveInstanceState(): 保存當前Fragment的狀態(tài)。該方法會自動保存Fragment的狀態(tài)刃宵,比如EditText鍵入的文本衡瓶,即使Fragment被回收又重新創(chuàng)建,一樣能恢復EditText之前鍵入的文本牲证。
onStop(): 執(zhí)行該方法時哮针,F(xiàn)ragment完全不可見。
onDestroyView(): 銷毀與Fragment有關(guān)的視圖坦袍,但未與Activity解除綁定十厢,依然可以通過onCreateView方法重新創(chuàng)建視圖。通常在ViewPager+Fragment的方式下會調(diào)用此方法捂齐。
onDestroy(): 銷毀Fragment蛮放。通常按Back鍵退出或者Fragment被回收時調(diào)用此方法。
onDetach(): 解除與Activity的綁定奠宜。在onDestroy方法之后調(diào)用包颁。

Fragment生命周期執(zhí)行流程(注意紅色的不是生命周期方法):
Fragment創(chuàng)建:

setUserVisibleHint()->onAttach()->onCreate()->onCreateView()->onActivityCreated()->onStart()->onResume();

Fragment變?yōu)椴豢梢姞顟B(tài)(鎖屏挎塌、回到桌面徘六、被Activity完全覆蓋):

onPause()->onSaveInstanceState()->onStop();

Fragment變?yōu)椴糠挚梢姞顟B(tài)(打開Dialog樣式的Activity):

onPause()->onSaveInstanceState()榴都;

Fragment由不可見變?yōu)榛顒訝顟B(tài):

onStart()->OnResume()待锈;

Fragment由部分可見變?yōu)榛顒訝顟B(tài):

onResume();

退出應(yīng)用:

onPause()->onStop()->onDestroyView()->onDestroy()->onDetach()
(注意退出不會調(diào)用onSaveInstanceState方法嘴高,因為是人為退出竿音,沒有必要再保存數(shù)據(jù));

Fragment被回收又重新創(chuàng)建:
被回收執(zhí)行

onPause()->onSaveInstanceState()->onStop()->onDestroyView()->onDestroy()->onDetach()

重新創(chuàng)建執(zhí)行

onAttach()->onCreate()->onCreateView()->onActivityCreated()->onStart()->onResume()->setUserVisibleHint()拴驮;

橫豎屏切換:與Fragment被回收又重新創(chuàng)建一樣春瞬。

Fragment 生命周期圖
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市套啤,隨后出現(xiàn)的幾起案子宽气,更是在濱河造成了極大的恐慌,老刑警劉巖潜沦,帶你破解...
    沈念sama閱讀 219,366評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件萄涯,死亡現(xiàn)場離奇詭異,居然都是意外死亡唆鸡,警方通過查閱死者的電腦和手機涝影,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,521評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來争占,“玉大人燃逻,你說我怎么就攤上這事序目。” “怎么了伯襟?”我有些...
    開封第一講書人閱讀 165,689評論 0 356
  • 文/不壞的土叔 我叫張陵猿涨,是天一觀的道長。 經(jīng)常有香客問我姆怪,道長嘿辟,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,925評論 1 295
  • 正文 為了忘掉前任片效,我火速辦了婚禮,結(jié)果婚禮上英古,老公的妹妹穿的比我還像新娘淀衣。我一直安慰自己,他們只是感情好召调,可當我...
    茶點故事閱讀 67,942評論 6 392
  • 文/花漫 我一把揭開白布膨桥。 她就那樣靜靜地躺著,像睡著了一般唠叛。 火紅的嫁衣襯著肌膚如雪只嚣。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,727評論 1 305
  • 那天艺沼,我揣著相機與錄音册舞,去河邊找鬼。 笑死障般,一個胖子當著我的面吹牛调鲸,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播挽荡,決...
    沈念sama閱讀 40,447評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼藐石,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了定拟?” 一聲冷哼從身側(cè)響起于微,我...
    開封第一講書人閱讀 39,349評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎青自,沒想到半個月后株依,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,820評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡性穿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,990評論 3 337
  • 正文 我和宋清朗相戀三年勺三,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片需曾。...
    茶點故事閱讀 40,127評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡吗坚,死狀恐怖祈远,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情商源,我是刑警寧澤车份,帶...
    沈念sama閱讀 35,812評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站牡彻,受9級特大地震影響扫沼,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜庄吼,卻給世界環(huán)境...
    茶點故事閱讀 41,471評論 3 331
  • 文/蒙蒙 一缎除、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧总寻,春花似錦器罐、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,017評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至祟印,卻和暖如春肴沫,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背蕴忆。 一陣腳步聲響...
    開封第一講書人閱讀 33,142評論 1 272
  • 我被黑心中介騙來泰國打工颤芬, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人孽文。 一個月前我還...
    沈念sama閱讀 48,388評論 3 373
  • 正文 我出身青樓驻襟,卻偏偏與公主長得像,于是被迫代替她去往敵國和親芋哭。 傳聞我的和親對象是個殘疾皇子沉衣,可洞房花燭夜當晚...
    茶點故事閱讀 45,066評論 2 355

推薦閱讀更多精彩內(nèi)容