如何使用EventBus将数据从Fragment发送到Fragment?

时间:2018-09-21 13:01:31

标签: android android-fragments greenrobot-eventbus

我正在使用EventBus将long的值从fragment发送到another片段。我使用以下代码来做到这一点。但是对我来说,它不起作用。我做错了什么?

这是我保存数据的片段:

@OnClick(R.id.buttonFinishMeeting)
public void onClickButton() {
    startActivity(RoutePlanCompleteActivity.newIntent(getContext(), routePlan));
    EventBus.getDefault().post(new Long(spentTime));
}

然后我要发送数据的片段:

@Subscribe
public void onEvent(Long time) {
    spentTime = time;
}

@Override
public void onResume() {
    super.onResume();
    EventBus.getDefault().register(this);
}

@Override
public void onPause() {
    super.onPause();
    EventBus.getDefault().unregister(this);
}

1 个答案:

答案 0 :(得分:0)

像这样替换您的订阅方法:-

@Subscribe(threadMode = ThreadMode.MAIN)  
public void onMessageEvent(MessageEvent event) {
---
};

此代码从此处摘自Eventbus的官方文档。如果您还有其他问题,请访问此链接https://github.com/greenrobot/EventBus