将数据从FragmentA的不同实例发送到FragmentB

时间:2018-01-07 22:37:29

标签: android fragment communication

问题如下。我有2 TabsFragments

Tab1)FragmentA的多个实例,需要将数据发送到FragmentB

Tab2)FragmentB需要从FragmentA接收数据并根据fragmentA发送数据的瞬间更新其中的不同视图。

假设我有2个FragmentA实例,每个实例都有一个计算点击次数的按钮,FragmentB有2个文本视图。我想要做的是当第一个实例中的按钮单击fragmentB更新中的第一个textview时,秒实例更新第二个textview。

FragmentA有interface getData(){ public void setData()}

MainActivitysetData(){fragmentB.updateInfo()}

FragmentB有updateInfo(){//if instance1 update textview1, if instance2 update textview2}

如何实现我的updateInfo方法来了解FragmentA的哪个实例调用它,以便我可以在其中更新不同的视图?我想这与fragmentA的标签有关,但我无法弄明白。

1 个答案:

答案 0 :(得分:0)

使用greenrobot's event bus将数据作为事件发布在一个片段中,并在另一个片段中订阅该数据。有关示例,请参阅this post