EventBus

EventBus是一种用于Android的发布/订阅事件总线。

优点:简化应用组件间的通讯;解耦事件的发送者和接收者;避免复杂和容易出错的依赖和生命周期的问题;很快,专门为高性能优化过等。

一、普通方法

1.在OnCreate()方法中注册EvenBus:

EventBus.getDefault().register(this);

2.在onEvenMainThread()方法中添加要做的事情:

---接收数据

3.在onDestroy()方法中反注册EvenBus:

EvenBus.getDefault.unregister(this);

4.发布事件:

EventBus.getDefault().post(new EventBusMessage(“数据”));

二、粘性事件:

1.发布事件:

EventBus.getDefault().postSticky(new EventBusMessage(“数据”));

2.在onEvenMainThread()方法中添加要做的事情:

sticky=true;---接收数据

3.在onClick()方法中注册EvenBus:

EventBus.getDefault().register(this);

4.在onDestroy()方法中移除所有粘性事件、反注册EvenBus:

EvenBus.getDefault.removeAllStickyEvent(this);

EvenBus.getDefault.unregister(this);

ThreadMode:

1.MAIN UI 主线程

2.BACKGUROUND 后台线程

3.POSTING 和发布者处在同一个线程

4.ASYNC 异步线程

注意:当接收到同一个类的实例参数有两个函数来接收时,两个函数都会执行。


--------本人小白,只做笔记,文章均来自网络,不喜勿喷,侵权删

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。