這篇文章給大家分享的是Android中fragment與activity的互相跳轉,相信大部分人都還沒學會這個技能,為了讓大家學會,給大家總結了以下內容,話不多說,一起往下看吧。
主Activity中加載(切換)多個fragment(也可以理解為activity跳轉fragment)或主fragment中加載(切換)多個fragment
Activity布局中要有一個fragment布局空間,比如id名為main_ FrameLayout
寫兩個fragment類繼承自fragment,比如
fragmentaextends Fragment (這個里面加載你的view和寫你在這個fragment中的事件)
fragmentb extends Fragment(同理)
注意:view =inflater.inflate(R.layout. fragmenta_layout, container, false);這句話一定要緊挨在oncreatview方法下面!,不然報錯你半天還找不到,我當時就是半天找不到??!
在主Activity的點擊事件(觸發事件)中比如你想點擊A這個按鈕加載fragmenta
執行下面代碼
fragmenta fm1=new fragmenta ();
FragmentManagerFM = getSupportFragmentManager();
FM.beginTransaction().replace(R.id.main_FrameLayout, fm1).commit();
4) 按鈕B.C等等同理,這樣就可以實現在一個Activity頁面加載不同的fragment,或者從一個Activity跳轉到不同的fragment
1) Fragment到activity跳轉即為普通intent跳轉
2) 在當前fragment頁面執行下面代碼:
3) Intent intent = new Intent(getActivity(),MainActivity.class);
如果兩個fragment依賴于一個Activity,比如壹的情況,則可以用切換的方法
@Override//核心代碼
2 public void onClick(View v) {
3 //獲取fragment的實例
4 Fragment fragment=new Fragment();
5 //獲取Fragment的管理器
6 FragmentManager fragmentManager=getFragmentManager();
7 //開啟fragment的事物,在這個對象里進行fragment的增刪替換等操作。
8 FragmentTransaction ft=fragmentManager.beginTransaction();
9 //跳轉到fragment,第一個參數為所要替換的位置id,第二個參數是替換后的fragment
10 ft.replace(R.layout.fragment1_layout,fragment);
11 //提交事物
12 ft.commit();
13 }
2) 如果兩個fragment依賴于不同的activity,那就直接avticity跳轉。
看完上述內容,你們掌握Android中fragment與activity的互相跳轉的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。