EventBus使用
1.库导入
在项目构建文件build.gradle中添加库依赖,如下
dependencies {
implementation 'org.greenrobot:eventbus:3.1.1'
}
2.注册事件监听
EventBus.getDefault().register(this);
3.注销事件监听
EventBus.getDefault().unregister(this);
4.事件监听回调
事件监听回调方法采用注解方式,方法名不指定。宜使用“On”开头,表明是监听方法。
@Subscribe(threadMode = ThreadMode.MAIN)
public void onLangEvent(LangEvent event) {
LogUtils.i(TAG,event.getMsg());
tvTxtEnterPsw.setText(R.string.please_enter_password);
btnCancel.setText(R.string.cancel);
btnOk.setText(R.string.confirm);
}
监听回调方法有4类
- ThreadMode.MAIN 主线程运行
- ThreadMode.POSTING 与事件发布同一线程
- ThreadMode.MAIN_ORDERED
- ThreadMode.BACKGOUD
- ThreadMode.ASYNC