EventBus简单使用

来源:互联网 发布:新发行的人工智能基金 编辑:程序博客网 时间:2024/06/07 08:51

EventBus是一个开源的是一个发布 / 订阅的事件的框架,在业界即使没有用过,也肯定听过,要是真没听过,那从现在起你就听说了。。
框架主要包含4个成分:发布者,订阅者,事件,总线。订阅者可以订阅事件,发送者发布事件,让你的组件彻底解耦。
使用姿势:

引入compile ‘org.greenrobot:eventbus:3.0.0’

EventBus.getDefault().register(this);
EventBus.getDefault().unregister(this);
EventBus.getDefault().post(param);

就这么几个方法,怎么用就不用说了,一看就只会。我觉得EventBus 有个缺点就是发送事件必须单独定义一个实体,也就是post里面必须传自定义类,这样会导致类很多。
在3.0以前使用还需要写,必须这样写

public void onEventMainThread(int param) {}
public void onEventPostThread(int param) {}
public void onEventBackgroundThread(int param) {}
public void onEventAsync(int param) {}

从方法的名字就可以看出事件是响应环境。在3.0以后就不用这么写了,方法名可以自定义,但是必须加上注解org.greenrobot.eventbus.Subscribe,指定响应环境。使用姿势就这几步,是不是很简单。。

原创粉丝点击