如果你想第一时间收到类似的文章
点击上面蓝色字体「爱开发」关注即可
关于EventBus作为一枚Android开发者,相信应该都听说过。要是用过就请忽略本文,本文讲得比较基础。
要是没用过没关系,看了本文你就会使用EventBus了。
目前EventBus最新版本是3.0,本demo基于3.0编写。
GitHub :
https://github.com/greenrobot/EventBus
官方文档:http://greenrobot.org/eventbus/documentation
EventBus是一个Android端优化的publish/subscribe消息总线,简化了应用程序内各组件间、组件与后台线程间的通信。
作为一个消息总线主要有三个组成部分:
事件(Event)
事件订阅者(Subscriber)
事件发布者(Publisher)
build.gradle添加引用
compile 'org.greenrobot:eventbus:3.0.0'
Maven
<dependency>
<groupId>org.greenrobot</groupId>
<artifactId>eventbus</artifactId>
<version>3.0.0</version></dependency>
或者直接下载EventBus 架包jar 放到项目中
public class MainMessage{ private String message; public String getMessage() { return message;
} public void setMessage(String message) { this.message = message;
}
}
EventBus.getDefault().register(this);//注册
EventBus.getDefault().unregister(this);//解除注册
EventBus.getDefault().post(new MainMessage("你好,爱开发");
//ui主线程中执行
@Subscribe(threadMode = ThreadMode.Main)
public void onMainEventBus(MainMessage msg) {
}
//priority越大,级别越高
@Subscribe(threadMode = ThreadMode.MAIN,priority = 100)
public void onEvent(MainMessage event) {
}
// 注意中止事件传递,后续事件不在调用
@Subscribepublic void onEvent(MessageEvent event){
EventBus.getDefault().cancelEventDelivery(event) ;
}
[END]
如果你想第一时间收到类似的文章
联系客服