標籤:fragments android 官方文檔
1**Fragments 是小片段的意思。**
1.建立一個Fragments.
2.Fragments對不同螢幕大小裝置的調整
3.Fragments的互動
2**Fragments 像什麼?**
Fragments 有點像sub-activity,能在不同的Activity裡面重複使用,擁有自己生命週期。能添加,刪除。這課程告訴你怎麼擴充Fragment。
Fragments涉及support Library .support Library是什麼意思?
Android support Library 是程式碼程式庫的集合,並向下相容android向下的版本。每一個庫包含了一個特點功能集。同時可以使用新的功能,並向下相容舊版本。
3.建立一個Fragment 類
1.建立一個類 extends Fragment。
2.重寫Fragment裡面的方法。給Fragment布局的函數是onCreatView().
note:調用Activity裡面的pause()方法,所有的fragment裡面的pause方法會調用。
4.Fragment的生命週期
1.開始創造Fragment 調用
onAttach,onCreate,…,onResume.
2.從Fragment到案頭 or螢幕上鎖,Fragment沒有毀滅。
再從案頭 or螢幕解鎖,不要建立Frament,直接onStart,
onResume。
3.從Fragment切換到新的Fragment,Fragment消失。
onPause,onDestoryView,再回本Fragment,要creatView,建立Fragment。
4.退出應用,
5.Add a Fragment to an Activity using XML
Fragment可以重用,每一個Fragment執行個體與FragmentActivity關聯,並在XML上實現這種關聯。
再MainActivity繼承FragmentActivity or ActionBarActivity(v7 appcompat library)
6.Building a Flexible UI
在 handset 手機裡面,螢幕小隻能放一個Fragment.而tablet可以放
並side-by-side放兩個。
FragmentManager提供許多方法管理Fragment.比如添加,刪除,修改。
7.Add a Fragment to an Activity at Runtime
1.FragmentManager建立一個對象FragmentTransaction來管理Fragment,
2.動態Fragment,必須在activity裡面的onCreate建立,必須有一個View,
3.FrameLayout扮演者Fragment容器,為了Fragment之間的轉換,必須添加改容器。
4.最後要提交事務transaction.
5.添加Fragment方法有getSupportFragmentManager().beginTransaction()
.add(R.id.fragment_container, firstFragment).commit();
8.Replace One Fragment with Another
執行Replace操作,跟從create一樣,只是把add,改成Replace。
當導航backward,undo,你必須在提交前執行FragmentTransaction的addToBackStack()方法。放在棧中,不會摧毀Fragment,否則摧毀。
addToBackStack讓使用者能向後導航fragment事務。
9.Fragment之間的互動
Fragment之間的互動是在關聯的Activity之間互動。兩個Fragment不能之間互動。
每個Fragment都有一個只包含,模組組件,定義它的布局,和行為。
定義好的Fragment讓他與activity關聯,使它與application邏輯關聯起來,實現全域的複合的UI.
10.定義介面
在Fragment定義一個介面。
並在Activity中實現這個介面。在onAttach()方法中捕捉介面的實現。然後調用介面來實現。 onArticleSelected()。
為了接受Fragment裡面onArticleSelected裡面的訊息,下面的Activity實現上面的介面。
宿主Fragment同findFragmentById()方法來擷取fragment的執行個體。
android開發官方教程之Building a Dynamic UI with Fragments