Android零基礎(chǔ)入門(mén)第85節(jié):Fragment使用起來(lái)非常簡(jiǎn)單

Fragment創(chuàng)建完成后并不能單獨(dú)使用,還需要將Fragment加載到Activity中,在Activity中添加Fragment的方式有兩種:靜態(tài)加載和動(dòng)態(tài)加載,接下來(lái)分別進(jìn)行學(xué)習(xí)。

一、靜態(tài)加載

靜態(tài)加載Fragment非常簡(jiǎn)單,直接把Fragment當(dāng)成普通的控件寫(xiě)在Activity的布局文件中。使用標(biāo)簽,該標(biāo)簽與其他控件的標(biāo)簽類(lèi)似,但必須要指定android:name屬性或class屬性,其屬性值為Fragment的全路徑名稱(chēng)。

接下來(lái)在上一期的案例基礎(chǔ)上繼續(xù)學(xué)習(xí),首先修改activity_main.xml文件,修改后的代碼如下:

當(dāng)然,也可以這樣使用:

上面兩種方法選擇其中一種即可,然后在Activity在onCreate( )方法中調(diào)用setContentView()加載布局文件即可。默認(rèn)已經(jīng)加載activity_main布局,這里就不做修改。

這樣我們的第一個(gè)Fragment示例程序就已經(jīng)完成了。直接運(yùn)行程序,可以看到下圖所示界面:

二、動(dòng)態(tài)加載

已經(jīng)學(xué)會(huì)了在布局文件中添加Fragment的方法,非常簡(jiǎn)單,但是有一個(gè)缺點(diǎn),那就是一旦添加就不能在運(yùn)行時(shí)將其刪除。所以我們還可以通過(guò)動(dòng)態(tài)加載的方式來(lái)完成,這種方式是在運(yùn)行時(shí)添加,相對(duì)來(lái)說(shuō)比較靈活。

首先Activity需要有一個(gè)ViewGroup容器存放Fragment,一般使用FrameLayout。

繼續(xù)在Activity對(duì)應(yīng)的activity_main布局文件中加入FrameLayout,再次修改后的代碼如下:

然后在Activity中,通過(guò)代碼將Fragment添加進(jìn)Activity中。動(dòng)態(tài)添加Fragment主要分為4步:

1、獲取到FragmentManager對(duì)象,在V4包中通過(guò)getSupportFragmentManager方法獲取,在系統(tǒng)中原生的Fragment是通過(guò)getFragmentManager獲得的。

2、開(kāi)啟一個(gè)事務(wù),通過(guò)調(diào)用beginTransaction方法開(kāi)啟。

3、向容器內(nèi)加入Fragment,一般使用add或者replace方法實(shí)現(xiàn),需要傳入容器的id和Fragment的實(shí)例。

4、提交事務(wù),調(diào)用commit方法提交。

接下來(lái)修改MainActivity的代碼,如下所示:

以上幾步是不是也是非常簡(jiǎn)單的,如果對(duì)FragmentManager和FragmentTransaction對(duì)象不理解沒(méi)關(guān)系,這里先記住這4步即可,后續(xù)會(huì)專(zhuān)門(mén)來(lái)學(xué)習(xí)這2個(gè)類(lèi)的使用。

這樣就完成了在Activity中動(dòng)態(tài)加載Fragment的功能,重新運(yùn)行程序,可以看到和上面靜態(tài)添加Fragment相同的界面。

至此,我們已經(jīng)學(xué)習(xí)了Fragment的創(chuàng)建以及兩種加載方式,你都掌握了嗎?下一期來(lái)更加詳細(xì)的學(xué)習(xí)Fragment,敬請(qǐng)期待。


今天就先到這里,如果有問(wèn)題歡迎留言一起探討,也歡迎加入Android零基礎(chǔ)入門(mén)技術(shù)討論微信群,共同成長(zhǎng)!

如果該系列分享對(duì)你有幫助,就動(dòng)動(dòng)手指關(guān)注、點(diǎn)贊、留言吧,你的互動(dòng)就是對(duì)我最大的鼓勵(lì)!

此文章版權(quán)為微信公眾號(hào)分享達(dá)人秀(ShareExpert)——鑫鱻所有,若需轉(zhuǎn)載請(qǐng)聯(lián)系作者授權(quán),特此聲明!

往期總結(jié)回顧:

Android零基礎(chǔ)入門(mén)第1節(jié):Android的前世今生

Android零基礎(chǔ)入門(mén)第2節(jié):Android 系統(tǒng)架構(gòu)和應(yīng)用組件那些事

Android零基礎(chǔ)入門(mén)第3節(jié):帶你一起來(lái)聊一聊Android開(kāi)發(fā)環(huán)境

Android零基礎(chǔ)入門(mén)第4節(jié):正確安裝和配置JDK, 高富帥養(yǎng)成第一招

Android零基礎(chǔ)入門(mén)第5節(jié):善用ADT Bundle, 輕松邂逅女神

Android零基礎(chǔ)入門(mén)第6節(jié):配置優(yōu)化SDK Manager, 正式約會(huì)女神

Android零基礎(chǔ)入門(mén)第7節(jié):搞定Android模擬器,開(kāi)啟甜蜜之旅

Android零基礎(chǔ)入門(mén)第8節(jié):HelloWorld,我的第一趟旅程出發(fā)點(diǎn)

Android零基礎(chǔ)入門(mén)第9節(jié):Android應(yīng)用實(shí)戰(zhàn),不懂代碼也可以開(kāi)發(fā)

Android零基礎(chǔ)入門(mén)第10節(jié):開(kāi)發(fā)IDE大升級(jí),終于迎來(lái)了Android Studio

Android零基礎(chǔ)入門(mén)第11節(jié):簡(jiǎn)單幾步帶你飛,運(yùn)行Android Studio工程

Android零基礎(chǔ)入門(mén)第12節(jié):熟悉Android Studio界面,開(kāi)始裝逼賣(mài)萌

Android零基礎(chǔ)入門(mén)第13節(jié):Android Studio個(gè)性化配置,打造開(kāi)發(fā)利器

Android零基礎(chǔ)入門(mén)第14節(jié):使用高速Genymotion,跨入火箭時(shí)代

Android零基礎(chǔ)入門(mén)第15節(jié):掌握Android Studio項(xiàng)目結(jié)構(gòu),揚(yáng)帆起航

Android零基礎(chǔ)入門(mén)第16節(jié):Android用戶(hù)界面開(kāi)發(fā)概述

Android零基礎(chǔ)入門(mén)第17節(jié):文本框TextView

Android零基礎(chǔ)入門(mén)第18節(jié):輸入框EditText

Android零基礎(chǔ)入門(mén)第19節(jié):按鈕Button

Android零基礎(chǔ)入門(mén)第20節(jié):復(fù)選框CheckBox和單選按鈕RadioButton

Android零基礎(chǔ)入門(mén)第21節(jié):開(kāi)關(guān)組件ToggleButton和Switch

Android零基礎(chǔ)入門(mén)第22節(jié):圖像視圖ImageView

Android零基礎(chǔ)入門(mén)第23節(jié):圖像按鈕ImageButton和縮放按鈕ZoomButton

Android零基礎(chǔ)入門(mén)第24節(jié):自定義View簡(jiǎn)單使用,打造屬于你的控件

Android零基礎(chǔ)入門(mén)第25節(jié):簡(jiǎn)單且最常用的LinearLayout線(xiàn)性布局

Android零基礎(chǔ)入門(mén)第26節(jié):兩種對(duì)齊方式,layout_gravity和gravity大不同

Android零基礎(chǔ)入門(mén)第27節(jié):正確使用padding和margin

Android零基礎(chǔ)入門(mén)第28節(jié):輕松掌握RelativeLayout相對(duì)布局

Android零基礎(chǔ)入門(mén)第29節(jié):善用TableLayout表格布局

Android零基礎(chǔ)入門(mén)第30節(jié):兩分鐘掌握FrameLayout幀布局

Android零基礎(chǔ)入門(mén)第31節(jié):少用的AbsoluteLayout絕對(duì)布局

Android零基礎(chǔ)入門(mén)第32節(jié):新推出的GridLayout網(wǎng)格布局

Android零基礎(chǔ)入門(mén)第33節(jié):Android事件處理概述

Android零基礎(chǔ)入門(mén)第34節(jié):Android中基于監(jiān)聽(tīng)的事件處理

Android零基礎(chǔ)入門(mén)第35節(jié):Android中基于回調(diào)的事件處理

Android零基礎(chǔ)入門(mén)第36節(jié):Android系統(tǒng)事件的處理

Android零基礎(chǔ)入門(mén)第37節(jié):初識(shí)ListView

Android零基礎(chǔ)入門(mén)第38節(jié):初識(shí)Adapter

Android零基礎(chǔ)入門(mén)第39節(jié):ListActivity和自定義列表項(xiàng)

Android零基礎(chǔ)入門(mén)第40節(jié):自定義ArrayAdapter

Android零基礎(chǔ)入門(mén)第41節(jié):使用SimpleAdapter

Android零基礎(chǔ)入門(mén)第42節(jié):自定義BaseAdapter

Android零基礎(chǔ)入門(mén)第43節(jié):ListView優(yōu)化和列表首尾使用

Android零基礎(chǔ)入門(mén)第44節(jié):ListView數(shù)據(jù)動(dòng)態(tài)更新

Android零基礎(chǔ)入門(mén)第45節(jié):網(wǎng)格視圖GridView

Android零基礎(chǔ)入門(mén)第46節(jié):列表選項(xiàng)框Spinner

Android零基礎(chǔ)入門(mén)第47節(jié):自動(dòng)完成文本框AutoCompleteTextView

Android零基礎(chǔ)入門(mén)第48節(jié):可折疊列表ExpandableListView

Android零基礎(chǔ)入門(mén)第49節(jié):AdapterViewFlipper圖片輪播

Android零基礎(chǔ)入門(mén)第50節(jié):StackView卡片堆疊

Android零基礎(chǔ)入門(mén)第51節(jié):進(jìn)度條ProgressBar

Android零基礎(chǔ)入門(mén)第52節(jié):自定義ProgressBar炫酷進(jìn)度條

Android零基礎(chǔ)入門(mén)第53節(jié):拖動(dòng)條SeekBar和星級(jí)評(píng)分條RatingBar

Android零基礎(chǔ)入門(mén)第54節(jié):視圖切換組件ViewSwitcher

Android零基礎(chǔ)入門(mén)第55節(jié):ImageSwitcher和TextSwitcher

Android零基礎(chǔ)入門(mén)第56節(jié):翻轉(zhuǎn)視圖ViewFlipper

Android零基礎(chǔ)入門(mén)第57節(jié):DatePicker和TimePicker選擇器

Android零基礎(chǔ)入門(mén)第58節(jié):數(shù)值選擇器NumberPicker

Android零基礎(chǔ)入門(mén)第59節(jié):常用三大Clock時(shí)鐘組件

Android零基礎(chǔ)入門(mén)第60節(jié):日歷視圖CalendarView和定時(shí)器Chronometer

Android零基礎(chǔ)入門(mén)第61節(jié):滾動(dòng)視圖ScrollView

Android零基礎(chǔ)入門(mén)第62節(jié):搜索框組件SearchView

Android零基礎(chǔ)入門(mén)第63節(jié):值得借鑒學(xué)習(xí)的選項(xiàng)卡TabHost

Android零基礎(chǔ)入門(mén)第64節(jié):揭開(kāi)RecyclerView廬山真面目

Android零基礎(chǔ)入門(mén)第65節(jié):RecyclerView分割線(xiàn)開(kāi)發(fā)技巧

Android零基礎(chǔ)入門(mén)第66節(jié):RecyclerView點(diǎn)擊事件處理

Android零基礎(chǔ)入門(mén)第67節(jié):RecyclerView數(shù)據(jù)動(dòng)態(tài)更新

Android零基礎(chǔ)入門(mén)第68節(jié):RecyclerView添加首尾視圖

Android零基礎(chǔ)入門(mén)第69節(jié):ViewPager快速實(shí)現(xiàn)引導(dǎo)頁(yè)

Android零基礎(chǔ)入門(mén)第70節(jié):ViewPager打造TabHost效果

Android零基礎(chǔ)入門(mén)第71節(jié):CardView簡(jiǎn)單實(shí)現(xiàn)卡片式布局

Android零基礎(chǔ)入門(mén)第72節(jié):SwipeRefreshLayout下拉刷新

Android零基礎(chǔ)入門(mén)第73節(jié):Activity創(chuàng)建和配置

Android零基礎(chǔ)入門(mén)第74節(jié):Activity啟動(dòng)和關(guān)閉

Android零基礎(chǔ)入門(mén)第75節(jié):Activity狀態(tài)和生命周期

Android零基礎(chǔ)入門(mén)第76節(jié):Activity數(shù)據(jù)保存和橫豎屏切換

Android零基礎(chǔ)入門(mén)第77節(jié):Activity任務(wù)棧和啟動(dòng)模式

Android零基礎(chǔ)入門(mén)第78節(jié):四大組件的紐帶——Intent

Android零基礎(chǔ)入門(mén)第79節(jié):Intent 屬性詳解(上)

Android零基礎(chǔ)入門(mén)第80節(jié):Intent 屬性詳解(下)

Android零基礎(chǔ)入門(mén)第81節(jié):Activity數(shù)據(jù)傳遞

Android零基礎(chǔ)入門(mén)第82節(jié):Activity數(shù)據(jù)回傳

Android零基礎(chǔ)入門(mén)第83節(jié):Activity間數(shù)據(jù)傳遞方法匯總

Android零基礎(chǔ)入門(mén)第84節(jié):引入Fragment原來(lái)是這么回事

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

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

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