Android 两个Fragment之间传递数据实例详解
2016-12-21 15:29
731 查看
Android 两个Fragment之间如何传递数据
FragmentA启动FragmentB,做一些选择操作后,返回FragmentA,需要把FragmentB里面选择的数据传回来。有什么办法?
Fragment之间不能直接通信,必须通过Activity来完成,具体步骤。
1. 在FragmentA中定义通信接口,通过该接口向Activity发送数据。
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中实现该接口,并通过该接口向FragmentB传递数据。
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接收到数据并处理。
public class FragmentA extends Fragment { public void onBeitieSelected(LinmoBeitieItem item) { // ... } }
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
您可能感兴趣的文章:
- Android自定义ViewPagerIndicator实现炫酷导航栏指示器(ViewPager+Fragment)
- Android Activity与Fragment之间的跳转实例详解
- Android中ViewPager获取当前显示的Fragment
- Android中fragment与activity之间的交互(两种实现方式)
- Android基础之使用Fragment控制切换多个页面
- Android基础之Fragment与Activity交互详解
- Android中fragment嵌套fragment问题解决方法
- Android Fragment 基本了解(图文介绍)
- Android 管理Activity中的fragments
- Android的Fragment的生命周期各状态和回调函数使用
- Android中Fragment的加载方式与数据通信详解
相关文章推荐
- Android 两个Fragment之间的跳转和数据的传递实例详解
- android bundle存放数据详解,activity与activity之间数据传递,fragment与fragment之间数据传递
- Android之Bundle传递数据详解与实例及Bundle与SharedPreferences的区别
- Android 在两个 Activity 之间传递数据
- android之bundle传递数据--两个activities之间
- Android之两个activity之间传递数据且有返回值
- Android之Bundle传递数据详解与实例及Bundle与SharedPreferences的区别
- android85--两个Activity之间怎么传递数据?
- android之bundle传递数据--两个activities之间
- Android中Activity和Fragment之间数据传递(例子中也有事务加载Fragment)
- Android之Bundle传递数据详解与实例及Bundle与SharedPreferences的区别
- Android 在两个 Activity 之间传递数据
- Android中两个Activity之间数据传递及返回
- Android之Bundle传递数据详解与实例及Bundle与SharedPreferenc...
- Android成长之路-关于bundle实现两个activity之间的数据传递
- Android之Bundle传递数据详解与实例及Bundle与SharedPreferences的区别
- Android中在两个Activity之间进行数据传递
- [Android实例] Activity之间数据传递与共享的几种途径(bitmap篇)
- Android笔记Fragment与Activity之间传递数据
- [一问一答][Android] 如何在两个Activity之间传递(共享)数据