Android 兩個Fragment之間傳遞數(shù)據(jù)實例詳解
Android 兩個Fragment之間如何傳遞數(shù)據(jù)
FragmentA啟動FragmentB,做一些選擇操作后,返回FragmentA,需要把FragmentB里面選擇的數(shù)據(jù)傳回來。有什么辦法?
Fragment之間不能直接通信,必須通過Activity來完成,具體步驟。
1. 在FragmentA中定義通信接口,通過該接口向Activity發(fā)送數(shù)據(jù)。
public class FragmentA extends Fragment { private onButtonPressListener mListener; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_linmo_select_beitie, container, false); listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { mListener.onOKButtonPressed(selectedBeitie); } }); return view; } @Override public void onAttach(Activity activity) { super.onAttach(activity); try { mListener = (onButtonPressListener) activity; } catch (ClassCastException e) { throw new ClassCastException(activity.toString() + " must implement onOkButtonPressed"); } } public interface onButtonPressListener { void onOKButtonPressed(LinmoBeitieItem item); } }
2. 在Activity中實現(xiàn)該接口,并通過該接口向FragmentB傳遞數(shù)據(jù)。
public class MainActivity extends Activity implements FragmentA.onButtonPressListener { @Override public void onOKButtonPressed(LinmoBeitieItem item) { FragmentB fragmentB = (FragmentB)getFragmentManager().findFragmentById(R.id.container); fragmentB.onBeitieSelected(item); } }
3. FragmentB接收到數(shù)據(jù)并處理。
public class FragmentA extends Fragment { public void onBeitieSelected(LinmoBeitieItem item) { // ... } }
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
- Android自定義ViewPagerIndicator實現(xiàn)炫酷導(dǎo)航欄指示器(ViewPager+Fragment)
- Android Activity與Fragment之間的跳轉(zhuǎn)實例詳解
- Android中ViewPager獲取當前顯示的Fragment
- Android中fragment與activity之間的交互(兩種實現(xiàn)方式)
- Android基礎(chǔ)之使用Fragment控制切換多個頁面
- Android基礎(chǔ)之Fragment與Activity交互詳解
- Android中fragment嵌套fragment問題解決方法
- Android Fragment 基本了解(圖文介紹)
- Android 管理Activity中的fragments
- Android的Fragment的生命周期各狀態(tài)和回調(diào)函數(shù)使用
- Android中Fragment的加載方式與數(shù)據(jù)通信詳解
相關(guān)文章
Android實現(xiàn)底部導(dǎo)航欄功能(選項卡)
這篇文章主要介紹了Android實現(xiàn)底部導(dǎo)航欄功能,可以隨意切換不同的頁面,實現(xiàn)選項卡功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2015-12-12Android Intent 用法全面總結(jié)及實例代碼
這篇文章主要介紹了Android Intent 用法全面總結(jié)的相關(guān)資料,并附實例代碼,需要的朋友可以參考下2016-09-09Android EditText默認不彈出輸入法的實現(xiàn)方法
下面小編就為大家分享一篇Android EditText默認不彈出輸入法的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01Android實現(xiàn)GridView中的item自由拖動效果
在前一個項目中,實現(xiàn)了一個功能是gridview中的item自由拖到效果,實現(xiàn)思路很簡單,主要工作就是交換節(jié)點,以及拖動時的移動效果,下面小編給大家分享具體實現(xiàn)過程,對gridview實現(xiàn)拖拽效果感興趣的朋友一起看看吧2016-11-11