Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> Fragment分解使用,fragment分解

Fragment分解使用,fragment分解

編輯:關於android開發

Fragment分解使用,fragment分解


Fragment碎片:作為Activity的一部分,不能單獨使用;

1. Fragment特點:

(1)一個Fragment可以在多個Activity中重用;

(2)一個Activity內部可以嵌入多個Fragment;

2. Fragment生命周期:

1)啟動app:

Activity:onCreate()àonStart()àonResume();

Fragment:

onAttach()àonCreate()àonCreateView()àonActivityCreated()àonStart()àonResume();

2)運行狀態到暫停狀態:

Activity:onPause()àonStop();

Fragment:onPause()àonStop();

3)暫停狀態到運行狀態:

Activity:onRestart()àonStart()àonResume();

Fragment:onStart()              àonResume();

4)運行狀態到銷毀狀態:

Activity:  onPause()àonStop()àonDestroy();

Fragment:onPause()àonStop()àonDestroyView()àonDestroy()àonDetach();

       (1)onAttach():關聯Fragment和Activity;可以在此方法中獲取當前Fragment所在的Activity;

       (2)onCreate():Fragment創建時調用此方法;可以初始化View的控件;

       (3)onCreateView():繪制Fragment的UI界面時調用此方法;必須返回一個View對象,如果返回為null,則該Fragment不會顯示內容;

       (4)onActivityCreated():當前Fragment所在Activity的onCreate()執行完成後回調此方法;

       (5)onStart():能看到部分界面但是不能交互;

       (6)onResume():運行狀態,可以交互;

       (7)onPause():暫停狀態,不能交互;

       (8)onStop():停止狀態:看不到UI界面;

       (9)onDestroyView():Fragment從Activity中移除View時回調此方法;

       (10)onDestroy():Fragment被銷毀時回調的方法;

       (11)onDetach():Fragment和所在的Activity失去關聯回調此方法;

3. 創建Fragment:

(1)創建Fragment的xml布局文件;

(2)創建Fragment子類,繼承Fragment類或者Fragment子類;

(3)重寫回調方法onCreate(), onCreateView(), onPause()等方法;

       1)onCreate():創建Fragment時回調此方法,可以初始化View以外的控件;

       2)onCreateView():繪制Fragment的UI界面時回調此方法,必須返回一個View視圖對象,作為當前Fragment的顯示視圖;

              該方法傳入布局加載器,用該布局加載器調用inflate()加載fragment的布局文件,傳入三個參數:參數1:要加載的Fragment布局文件;參數2:該Fragment所在的容器;參數3:布爾值;之後返回布局加載器加載的視圖;

              注意:(1)如果參數2設置為null,則會直接返回創建的視圖;

                      (2)(推薦)如果參數2設置為傳入的container容器,參數3為false,則會從容器中得到LayoutParams,對要加載的視圖設置LayoutParams;

                      (3)如果參數2設置為傳入的container容器,參數3為true,則將要加載的子視圖放在container容器中;

4. 將Fragment嵌入到Activity中:

(1)第一種方式:靜態標簽添加:

使用fragment標簽,必須添加屬性id指定當前fragment的id和屬性name指定包名;

(2)第二種方式(常用):代碼動態嵌入:

       1)獲取碎片管理器,上下文調用getFragmentManager()獲得FragmentManager對象;

       2)開啟事務,FragmentManager對象調用beginTransaction()獲得FragmentTransaction對象;

       3)動態將Fragment嵌入到Activity中,包括add()添加,replace()替換,remove()移除等;

              添加和替換時需要傳入兩個參數:參數1:將Fragment放入的容器中;

                                                                 參數2:要放進容器中的Fragment對象;

       4)提交事務,FragmentTransaction對象調用commit()提交;

       注意:事務一定進行提交之後,才會運行;

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved