本人使用EventBus是在BaseAcitivity中的onCreate方法中注册,就不需要一直注册和取消注册。
onCreate()方法中注册
EventBus.getDefault().register(this);
在onDestroy()方法中取消注册
EventBus.getDefault().unregister(this);
在需要通知的地方调用此方法,参数根据自己需要传递的值,写对应的变量,如果只是需要通知刷新数据,AccountEvent类可以是一个空类,不需要任何变量。
EventBus.getDefault().post(new AccountEvent());
在更新的类中写此方法,方法名可以随意命名,但记得加标注
@Subscribe(threadMode = ThreadMode.MAIN)
public void onAccountChangeEvent(AccountEvent accountEvent) {
//在这里写更新操作,不能做耗时操作
}