Fragment和Fragment之间的数据传输

前面我已经实现了Activity之间以及基于Fragment的Activity之间的数据传递,现在需要实现的是由同一Activity托管的两个Fragment,及Fragment one 与 Fragment two之间的数据传输。

如图所示:


上图表达了Fragment之间发送和接收数据用到的具体方法.。

先在Activity中获取Fragment One 和 Fragment Two的实例,然后将Fragment One 的 TargetFragment 设置为 Fragment Two,在Fragment One中调用 getTargetFragment.onActivityResult就可以将数据传递给Fragment Two.  然后Fragment Two在onActivityResult方法中解析数据即可。

然后同样将Fragment Two 的 TargetFragment 设置为 Fragment One,在Fragment Two中调用 getTargetFragment.onActivityResult就可以将数据传递给Fragment Two.  然后Fragment Two在onActivityResult方法中解析数据即可。


用一个Activity 绑定两个Fragment 一个在上 一个在下

实现的效果如下:

图一 为未发送消息时刚刚进去的界面.

图二 为Fragment_one 发送了一个 “哈哈,这是one发的消息” 。 在Fragment Two中显示出来了。

图三 为Fragment_two 发送了一个“收到了,我是,two”。 在Fragment one中显示出来了。



代码如下:


Activity的布局代码如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
    <FrameLayout
        android:id="@+id/fragment_container_one"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        />
    <FrameLayout
        android:id="@+id/fragment_container_two"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        />
</LinearLayout>

Activity的Java代码:


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值