Last updated 11 months ago
Was this helpful?
EventBus是干嘛的?
通过 Gradle:
implementation 'org.greenrobot:eventbus:3.2.0'
定义事件:
public static class MessageEvent { /* Additional fields if needed */ }
准备订阅: 声明订阅方法并添加注解@Subscribe,@Subscribe注解中可指定一个线程模型,详见:
@Subscribe(threadMode = ThreadMode.MAIN) public void onMessageEvent(MessageEvent event) {/* Do something */};
注册并取消注册你的订阅器. 例如在Android中, 根据activities或fragments的声明周期注册和取消注册订阅器:
@Override public void onStart() { super.onStart(); EventBus.getDefault().register(this); } @Override public void onStop() { super.onStop(); EventBus.getDefault().unregister(this); }
发送事件:
EventBus.getDefault().post(new MessageEvent());
完整文档请见 .
用法示例请见 .