Android 消息分发使用EventBus的实例详解

1. AndroidStudio使用
dependencies {
//最新版本
compile 'org.greenrobot:eventbus:3.0.0'
//可以翻倍提高EventBus使用效率
provided 'de.greenrobot:eventbus-annotation-processor:3.0.0-beta1'
}
2. 在基类Activity中配置
/**
* Activity基类
*/
protected EventBus eb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//单例模式获取到实例并注册
eb = EventBus.getDefault();
eb.register(this);
}
@Override
protected void onDestroy() {
//反注册
eb.unregister(this);
super.onDestroy();
}
//主线程
@Subscribe(threadMode = ThreadMode.MAIN)
public void onMainEvent(EventBean event) {
}
//主线程 粘性(比如传递intent使用)
@Subscribe(sticky = true, threadMode = ThreadMode.MAIN)
public void onMainStickEvent(EventBean event) {
}
//后台
@Subscribe(threadMode = ThreadMode.BACKGROUND)
public void onBackgroundEvent(EventBean event) {
}
//重新开启一个线程来执行
@Subscribe(threadMode = ThreadMode.ASYNC)
public void onAsyncEvent(EventBean event) {
}
一般情况下,常用重写onMainEvent ( ) 方法即可。
3. 创建自定义消息实体
//根据不同需求自定义
/**
* 自定义Event消息
*/
public class EventBean {
public int id;//类型标识
public Object data;//数据对象
//省略constructor & getter & setter
}
4. 发送消息
继承自基类Activity后: eb.post(new EventBean(1, "data")); //粘性 eb.postSticky(new EventBean(1, "data"));
5. 消息处理
根据数据处理的需求重写基类的4个方法即可。
以上就是Android 消息分发使用EventBus的实例,如有疑问请留言或者到本站社区交流讨论,本站关于Android的文章还有很多希望大家搜索查阅,谢谢大家对本站的支持!
# Android
# 消息分发使用EventBus
# EventBus的使用
# Android实现EventBus登录界面与传值(粘性事件)
# Android EventBus 3.0.0 使用总结(必看篇)
# Android中使用开源框架eventbus3.0实现fragment之间的通信交互
# Android之利用EventBus发送消息传递示例
# Android 中 EventBus 的使用之多线程事件处理
# Android EventBus(普通事件/粘性事件)详解
# 自定义
# 重写
# 如有
# 翻倍
# 数据处理
# 希望大家
# 谢谢大家
# 最新版本
# 还有很多
# 疑问请
# 发送消息
# Activity
# protected
# 基类
# annotation
# processor
# eb
# savedInstanceState
# Bundle
# getDefault
相关文章:
如何获取开源自助建站系统免费下载链接?
如何用已有域名快速搭建网站?
公司网站设计制作厂家,怎么创建自己的一个网站?
香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
如何通过商城免费建站系统源码自定义网站主题?
定制建站是什么?如何实现个性化需求?
高端智能建站公司优选:品牌定制与SEO优化一站式服务
实例解析angularjs的filter过滤器
如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法
建站之星安装路径如何正确选择及配置?
建站之星体验版:智能建站系统+响应式设计,多端适配快速建站
图册素材网站设计制作软件,图册的导出方式有几种?
北京建设网站制作公司,北京古代建筑博物馆预约官网?
如何在IIS中新建站点并解决端口绑定冲突?
专业商城网站制作公司有哪些,pi商城官网是哪个?
公司网站的制作公司,企业网站制作基本流程有哪些?
如何在云主机上快速搭建多站点网站?
如何快速搭建虚拟主机网站?新手必看指南
如何有效防御Web建站篡改攻击?
小型网站制作HTML,*游戏网站怎么搭建?
网站制作新手教程,新手建设一个网站需要注意些什么?
韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐
家具网站制作软件,家具厂怎么跑业务?
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
成都响应式网站开发,dw怎么把手机适应页面变成网页?
青岛网站建设如何选择本地服务器?
电商网站制作公司有哪些,1688网是什么意思?
制作充值网站的软件,做人力招聘为什么要自己交端口钱?
建站主机系统SEO优化与智能配置核心关键词操作指南
北京网站制作网页,网站升级改版需要多久?
如何快速打造个性化非模板自助建站?
建站10G流量真的够用吗?如何应对访问高峰?
建站之星与建站宝盒如何选择最佳方案?
如何安全更换建站之星模板并保留数据?
如何用PHP快速搭建CMS系统?
如何快速查询网址的建站时间与历史轨迹?
建站之星下载版如何获取与安装?
Android滚轮选择时间控件使用详解
如何通过建站之星自助学习解决操作问题?
php json中文编码为null的解决办法
建站之星IIS配置教程:代码生成技巧与站点搭建指南
怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?
魔方云NAT建站如何实现端口转发?
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
建站之星CMS建站配置指南:模板选择与SEO优化技巧
如何通过FTP服务器快速搭建网站?
宝塔面板创建网站无法访问?如何快速排查修复?
如何在腾讯云服务器上快速搭建个人网站?
如何通过虚拟主机快速搭建个人网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。