標籤:
Fragment
詳細介紹串連:http://blog.csdn.net/harvic880925/article/details/44927375
fragment是一種控制器對象,activity可委派它完成一些任務,通常這些任務就是系統管理使用者介面,受管理的使用者介面可以是一整屏或是整屏的一部分,
系統管理使用者介面的fragment又稱UI fragment 它也有自己的布局檔案視圖,fragment視圖包含了使用者可以互動的可視化的UI元素,
activity視圖含有可供fragment視圖插入的位置,如果有多個fragment要插入,activity視圖也可以提供多個位置
fragment的生命週期方法是由託管的activity調用的而不是作業系統,
activity 託管fragment的二種方法:
1:添加fragment到activity中,優點:簡單,缺點:靈活行差,此方法等同於將fragment及其視圖與activity視圖綁定在一起,在activity生命週期中無法切換fragment
2:在activity代碼中添加fragment,缺點:複雜,優點:運行時控制fragment,可以在運行時添加移除更換fragment等等,
*fragment和activity同樣具有儲存以及擷取狀態的bundle,如同使用Activity.onSaveInstanceState(Bundle)方法一樣,也可以覆蓋Fragment.onSaveInstanceState(Bundle)
方法,實現旋轉螢幕回複資料等,
*fragment產生視圖不是像Activity一樣在onCreate(...)方法中而是在onCreateView(...)中,並且是擷取控制項以及控制項的監聽事件的地方,可以在fragment的onCreate(...)方法中設定託管的Activity的標題getActivity().setTitle(...);getActivity()不僅可以返回託管的Activity,並且允許fragment處理更多的Activity相關的事務,
FragmentManager
FragmentManager類負責管理fragment並將它們的視圖添加到activity的視圖層級結構中,
具體管理的是:
1,fragment隊列
2,fragment事務的回退棧,
android Fragment相關概念簡介