fragment是Activity中用戶界面的一個(gè)行為或者是一部分。你可以在一個(gè)單獨(dú)的Activity上把多個(gè)Fragment組合成為一個(gè)多區(qū)域的UI,并且可以在多個(gè)Activity中再使用。你可以認(rèn)為fragment是activity的一個(gè)模塊零件,它有自己的生命周期,接收它自己的輸入事件,并且可以在Activity運(yùn)行時(shí)添加或者刪除。

兩個(gè)概念:Fragment、宿主

fragment的生命周期直接受其宿主activity的生命周期的影響。例如,一旦activity被暫停,它里面所有的fragment也被暫停,一旦activity被銷毀,它里面所有的fragment也被銷毀。

Android在3.0(11)版本中引入7fragment的概念

有了fragment,你可以不必去管理視圖體系的復(fù)雜變化。通過將actjvjty的布局分割成若干個(gè)fragment,可以在運(yùn)行時(shí)編輯activity的呈現(xiàn),并且那些變化會(huì)被保存在由activity管理的后臺(tái)棧里面。

要?jiǎng)?chuàng)建一個(gè)fragment,必須創(chuàng)建一個(gè)fragment的子類(或是繼承自它的子類)。fragment類的代碼看起來很像activity。它與activity一樣都有回調(diào)函數(shù),例如onCreate(),onstart(),onPause(),和onstop()。事實(shí)上,如果你正在將一個(gè)現(xiàn)成的Android應(yīng)用轉(zhuǎn)而使用fragment來實(shí)現(xiàn),可以簡單的將代碼從activity的回調(diào)函數(shù)移植到各自的fragment回調(diào)函數(shù)中。

除了基類fragment,這里還有幾個(gè)你可能會(huì)繼承的子類:

DialogFragment、ListFragment、PreferenceFragment

網(wǎng)友評(píng)論