Fragment之间传递数据

最近做demo用到了fragment , 想着fragment之间应该跟activity一样可以传递数据. 话虽如此, 但是对fragment不大熟悉, 所以百度了好几个方法都不行,最后在好友的指导下 终于知道了如何操作 . 目前只是做到了简单数据的传递, 复杂数据 map之类的,日后会补充的, 写这个文章一方面可以帮助一下像我一样不大熟悉fragment的朋友, 一方面更是让自己有所记录以后不怕找不到代码.

直接上代码吧.

当前的fragment的代码:

(自己写个点击事件,将下面这几行代码复制进来,即可进行测试)

FragmentTransaction ft = getFragmentManager().beginTransaction();
//隐藏当前的fragment,tag我自定义为A
ft.hide(getActivity().getSupportFragmentManager().findFragmentByTag("A"));
//拿到下一个fragment的实例
NextFragment nf = new NextFragment();
//使用bunle传递数据
Bundle bundle = new Bundle();
bundle.putString("key", "---你好呀,NextFragment---");
nf.setArguments(bundle);
//打开下一个fragment,参数1:依附的activity,参数2:下一个fragment的实例

//参数3:下一个fragment的tag
ft.add(R.id.fragment_root,nf, "B");
ft.addToBackStack("B");
ft.commit();

下一个fragment,即NextFragment的代码:

在onCreatView()方法里面

//记得判空,不然可能空指针
if (getArguments() != null) {
    String string = getArguments().getString("key");
    ToastUtil.show(getActivity(), string);
  }


ps:这个方法,似乎只是适合于同一个activity容器下的fragment之间消息传递...日后继续补充...


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值