天天看点

【第一篇】学习 android 事件总线androidEventbus之sticky事件的传递

最近再看eventbus相关代码,首先从使用开始,后期再从源码角度分析eventbus.使用Demo后期公布到github上去。

使用的框架地址:https://github.com/bboyfeiyu/AndroidEventBus

Sticky 事件 使用例子:

1,首先每个Activity或者fragement都要进行eventBus的注册和反注册。

发送sticky事件的activity:

<code></code>

接收事件的类:

注意这里的注册不是register就行了,而是:EventBus.getDefault().registerSticky(this);

然后配置文件:

如果MainActivity发送事件总线时,设置Tag的话,OtherActivity@Subscriber 注解没有添加tag的话,就不会获取到数据,除非设置tag

设置tag代码如下:

<code> 1 EventBus.getDefault().postSticky( 2 new User("soyoungboy", "西安财经学院"),"soyoungboy");  </code>

则对应的OtherActivity中接收的改为:

<code>//此处获取发送事件的内容</code>

框架对应Demo中有这样一句话:

不同组件 (Activity、Fragment、Service等)、不同线程之间都可以通过事件总线来发布事件,它是线程安全的。

 * 只要发布的事件的参数类型和tag都匹配即可接收到事件.  

继续阅读