如果你想第一时间收到类似的文章 点击上面蓝色字体「爱开发」关注即可
关于EventBus作为一枚Android开发者,相信应该都听说过。要是用过就请忽略本文,本文讲得比较基础。 要是没用过没关系,看了本文你就会使用EventBus了。 目前EventBus最新版本是3.0,本demo基于3.0编写。 GitHub : https://github.com/greenrobot/EventBus 官方文档: http:///eventbus/documentation
一、EventBus概述EventBus是一个Android端优化的publish/subscribe消息总线,简化了应用程序内各组件间、组件与后台线程间的通信。 作为一个消息总线主要有三个组成部分: 事件(Event) 事件订阅者(Subscriber) 事件发布者(Publisher)
二、EventBus用法1、把EventBus依赖到项目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 放到项目中 2、构造发送消息类,也就是发送的对象public class MainMessage{ private String message; public String getMessage() { return message;
} public void setMessage(String message) { this.message = message;
}
}
3、注册/解除注册EventBus.getDefault().register(this);//注册
EventBus.getDefault().unregister(this);//解除注册
4 、发送消息EventBus.getDefault().post(new MainMessage("你好,爱开发");
5 、事件处理//ui主线程中执行
@Subscribe(threadMode = ThreadMode.Main)
public void onMainEventBus(MainMessage msg) {
}
6、priority事件优先级//priority越大,级别越高
@Subscribe(threadMode = ThreadMode.MAIN,priority = 100)
public void onEvent(MainMessage event) {
}
7、终止事件传递// 注意中止事件传递,后续事件不在调用
@Subscribepublic void onEvent(MessageEvent event){
EventBus.getDefault().cancelEventDelivery(event) ;
}
[END]
为什么有的人工作多年还是老样子 程序员月薪多少才不会焦虑
如果你想第一时间收到类似的文章
|