Fragment面試詳解

一、Fragment為什么被稱為第五大組件

1、Fragment為什么被稱為第五大組件

2、Fragment 加載到Activity的兩種方式

靜態(tài)加載、動態(tài)加載。

3、FragmentPageAdapter與FragmentStatePageAdapter區(qū)別

使用FragmentPagerAdapter 時,F(xiàn)ragment對象會一直存留在內(nèi)存中,所以當(dāng)有大量的顯示頁時,就不適合用FragmentPagerAdapter了,F(xiàn)ragmentPagerAdapter 適用于只有少數(shù)的page情況,像選項(xiàng)卡。釋放的時候使用detach


這個時候你可以考慮使用FragmentStatePagerAdapter ,當(dāng)使用FragmentStatePagerAdapter 時,如果Fragment不顯示,那么Fragment對象會被銷毀,(滑過后會保存當(dāng)前界面,以及下一個界面和上一個界面(如果有),最多保存3個,其他會被銷毀掉)

但在回調(diào)onDestroy()方法之前會回調(diào)onSaveInstanceState(Bundle outState)方法來保存Fragment的狀態(tài),下次Fragment顯示時通過onCreate(Bundle savedInstanceState)把存儲的狀態(tài)值取出來,F(xiàn)ragmentStatePagerAdapter 比較適合頁面比較多的情況,像一個頁面的ListView 。


二、Fragment生命周期

1、Activity與fragment生命周期

三、Fragment 通信


三、Fragment 的replace、add、remove方法

replace

第一次加載時的生命周期:onAttach-onCreate-onCreateView-onViewCreate-onActivityCreate-onStart-onResume;

銷毀的時候:onPause-onStop-onDestroyView

再次加載 到時候:onCreateView-onViewCreate-onActivityCreate-onStart-onResume。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1、Fragment為什么被稱為第五大組件 在日常開發(fā)中Fragment使用頻率很高,F(xiàn)ragment不屬于其他四...
    程序猿BOSS閱讀 504評論 0 0
  • 一.Fragment為什么被稱為第五大組件 1.Fragment為什么被稱為第五大組件 3.0大屏幕更靈活展示UI...
    xiaolong20閱讀 621評論 0 0
  • 引言:這篇文章,大概分析下Fragment的生命周期、實(shí)際應(yīng)用方法以及使用Fragment時需要注意的地方,算是F...
    androidjp閱讀 13,106評論 10 104
  • 沒有星星和月的夜 寂靜籠罩著群山 我的心像飛鳥一樣 落在一處安靜的地方 淅淅瀝瀝的小雨 敲打著窗外的相思夜 期盼一...
    素驪閱讀 249評論 0 2
  • 今天突然想起紅樓夢。 果然曹雪芹花費(fèi)十年心血寫成的作品能量級別還是很高的。我一想起來里頭的種種人物和他們的生活,覺...
    1d02bd8140cc閱讀 660評論 0 1

友情鏈接更多精彩內(nèi)容