我正在使用EventBus 3在片段之间发送数据。我已经使用EventBus.getDefault.post(etc)从Fragment A发送数据并成功接收Fragment B中的数据。
现在,当我尝试在片段C中获取片段A的相同数据时。片段C中没有显示任何内容。没有错误。可能是订户不工作。请指导我如何使用EventBus从片段A到片段B和C获得相同的数据。
由于
答案 0 :(得分:0)
you can try this way add dependency inside your build gradle file.
compile 'org.greenrobot:eventbus:3.1.1'
in fragment A override methods like this.send data like this call in your
method from where you want to send data.
EventBus.getDefault().post(new String("Notification"));
@Override
public void onStart() {
super.onStart();
getFriendFromServer();
EventBus.getDefault().register(this);
}
@Override
public void onStop() {
super.onStop();
EventBus.getDefault().unregister(this);
}
@Subscribe(threadMode = ThreadMode.MAIN)
public void toChangeSearchFocus(String event) {
}
片段B中的
@Override
public void onStart() {
super.onStart();
EventBus.getDefault().register(this);
}
@Override
public void onStop() {
super.onStop();
EventBus.getDefault().unregister(this);
}
@Subscribe(threadMode = ThreadMode.MAIN)
public void toChangeSearchFocus(String event) {
// here you will get your data.
}