0
点赞
收藏
分享

微信扫一扫

EventBus简单使用


github:​​https://github.com/greenrobot/EventBus/​​


compile 'org.greenrobot:eventbus:3.0.0'

EventBus使用起来可以说是非常简单,而且是轻量级的,目前github的start已经15k+了

根据官网说明,只需要三步即可完成事件通知

1.注册、移除注册

建议放在onCreate和onDestory中,因为跳转的话会走onStop,再通知的话会出现接收不到消息的情况,虽然可以用postSticky,但是能避免的为什么不避免呢


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

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


2.发布消息

只需要一行代码,非常简便

EventBus.getDefault().post("SecondActivity发起的通知");

3.重写方法接收参数

@Subscribe
public void onEventMainThread(String event) {
mTextView.setText(event);
Toast.makeText(this, event, Toast.LENGTH_SHORT).show();
}

到这里一个通知就完了。。

重写的方法要加上@Subscribe才行


也可以这样写

@Subscribe(threadMode = ThreadMode.MAIN)

直接指定方法执行的线程

ThreadMode有四种

1 ThreadMode: POSTING
2 ThreadMode: MAIN
3 ThreadMode: BACKGROUND
4 ThreadMode: ASYNC




举报

相关推荐

0 条评论