EventBus

原理图:

EventBus_第1张图片

直接教你简单的实现:

提供的支持库

compile'org.greenrobot:eventbus:3.0.0'

然后在你需要响应事件的地方注册(我们用默认的注册方法,也可自己bulder()。详情自查)。

一般在相应事件程序开始的地方比如 onCreate();

EventBus.getDefault().register(this);

注册之后为了防止内存的溢出等问题,我们就要反注册一下。

一般activity,fragment,server 都在onStop()或是onDestroy()的方法中反注册。

EventBus.getDefault().unregister(this);

接着就是创建回调(响应)的方法,这里有个提示就是使用AndroidStudio (eclipse开发工具的就不是很清楚没试过)工具的要在这个回调(响应)的方法加上      @Subscribe    。否则会抛出Subscriberclass XXX and its super classes havenopublic methods with the@Subscribeannotation  的错误

EventBus_第2张图片
EventBus_第3张图片

反正就是要写不然也会抛出 “Subscriberclass XXX and its super classes havenopublic methods with the@Subscribeannotation” 的错误,

注: 这里响应的FristEventBus是对象,你也可以是String等类型,不能为空

最后就是发送了,当然就是在你需要去发送的时候去调用这个发送的就可以啦

EventBus.getDefault().post(new FristEventBus("test_value"));

完,简述,方便我自己以后回忆和提醒

你可能感兴趣的:(EventBus)