fragment生命週期及優點

2022-09-11 14:51:26 字數 1365 閱讀 7296

fragment生命週期

切換到該fragment

onattach—> oncreate-> oncreateview—> onactivitycreated-> onstart-> onresume

切換到其他fragment:

onpause-> onstop-> ondestroyview

切換回本身的fragment:

oncreateview-> onactivitycreated-> onstart-> onresume

顯示fragment時(跟使用者互動)要呼叫的核心的生命週期方法如下:

1. 把fragment物件跟activity關聯時,呼叫onattach(activity)方法;

2. fragment物件的初始建立時,呼叫oncreate(bundle)方法;

3. oncreateview(layoutinflater, viewgroup, bundle)方法用於建立和返回跟fragment關聯的view物件;

4. onactivitycreate(bundle)方法會告訴fragment物件,它所依附的activity物件已經完成了activity.oncreate()方法的執行;

5. onstart()方法會讓fragment物件顯示給使用者(在包含該fragment物件的activity被啟動後);

6. onresume()會讓fragment物件跟使用者互動(在包含該fragment物件的activity被啟恢復後)。

7、ondestroyview()方法用於清除跟fragment中的view物件關聯的資源;

8、fragment物件的狀態被最終清理完成之後,要呼叫ondestroy()方法;

fragment優點:

fragment可以使你能夠將activity分離成多個可重用的元件,每個都有它自己的生命週期和ui。

fragment可以輕鬆得建立動態靈活的ui設計,可以適應於不同的螢幕尺寸。從手機到平板電腦。

fragment是乙個獨立的模組,緊緊地與activity繫結在一起。可以執行中動態地移除、加入、交換等。

fragment提供乙個新的方式讓你在不同的安卓裝置上統一你的ui。

fragment 解決activity間的切換不流暢,輕量切換。

fragment 替代tabactivity做導航,效能更好。

fragment 在4.2.版本中新增巢狀fragment使用方法,能夠生成更好的介面效果。

fragment做區域性內容更新更方便,原來為了到達這一點要把多個布局放到乙個activity裡面,現在可以用多fragment來代替,只有在需要的時候才載入fragment,提高效能。

可以從startactivityforresult中接收到返回結果,但是view不能。

Fragment生命週期

onattach 當碎片依附活動的時候被呼叫 oncreate 活動被建立 oncreateview 為碎片建立view,載入布局時呼叫 onactivitycreated 確保view已經被建立完畢時呼叫 onstart 活動被開啟,由不可見變為可見 onresume 活動已經準備好和使用者進行互...

Fragment生命週期

與activity類似,碎片有自己的生命週期。當碎片被建立時,會經歷 onattach oncreate oncreateview onactivitycreated 當碎片變得可見時,會經歷 onstart onresume 當碎片進入後台模式時,會經歷 onpause onstop 當碎片被銷毀...

理解Fragment生命週期

主要看兩張圖,和跑 一,fragment的生命周 二,與activity生命週期的對比 場景演示 切換到該fragment 螢幕滅掉 螢幕解鎖 切換回本身的fragment 回到桌面 回到應用 退出應用 1.當乙個fragment被建立的時候,它會經歷以下狀態.onattach oncreate o...