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) {    // ...  }}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

更多相关文章

  1. SpringBoot 2.0 中 HikariCP 数据库连接池原理解析
  2. 一句话锁定MySQL数据占用元凶
  3. Android(安卓)如何使用Intent传递对象
  4. RxJava2 学习笔记
  5. 1-Android基础知识
  6. Android(安卓)ListView的创建以及数据适配器的使用
  7. android开发流程
  8. Andorid App Widget Framework分析之一:AppWidgetService
  9. SQLite数据库浅谈

随机推荐

  1. 如何使用分区处理MySQL的亿级数据优化
  2. 关于Mysql-connector-java驱动版本问题总
  3. MySQL ifnull的嵌套使用说明
  4. MySql中 is Null段判断无效和IFNULL()失
  5. MySql关于null的函数使用分享
  6. MySql 如何实现无则插入有则更新
  7. MySQL慢查询以及重构查询的方式记录
  8. 详解MySQL中的pid与socket
  9. MySQL 如何设计统计数据表
  10. 浅谈MySQL 亿级数据分页的优化