全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

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

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 


相关文章: 制作国外网站的软件,国外有哪些比较优质的网站推荐?  专业网站建设制作报价,网页设计制作要考什么证?  视频网站app制作软件,有什么好的视频聊天网站或者软件?  子杰智能建站系统|零代码开发与AI生成SEO优化指南  简历在线制作网站免费版,如何创建个人简历?  行程制作网站有哪些,第三方机票电子行程单怎么开?  香港服务器租用每月最低只需15元?  猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?  C++时间戳转换成日期时间的步骤和示例代码  音响网站制作视频教程,隆霸音响官方网站?  武汉网站如何制作,黄黄高铁武穴北站途经哪些村庄?  番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?  大连网站制作公司哪家好一点,大连买房网站哪个好?  建站之星备案流程有哪些注意事项?  深圳网站制作培训,深圳哪些招聘网站比较好?  建站之星安装模板失败:服务器环境不兼容?  视频网站制作教程,怎么样制作优酷网的小视频?  建站主机类型有哪些?如何正确选型  如何通过VPS搭建网站快速盈利?  网站按钮制作软件,如何实现网页中按钮的自动点击?  如何在云虚拟主机上快速搭建个人网站?  宝塔建站后网页无法访问如何解决?  如何选择CMS系统实现快速建站与SEO优化?  建站之星后台密码遗忘?如何快速找回?  如何快速配置高效服务器建站软件?  如何获取开源自助建站系统免费下载链接?  学校为何禁止电信移动建设网站?  建站之星后台密码遗忘或太弱?如何重置与强化?  公司网站制作需要多少钱,找人做公司网站需要多少钱?  如何通过虚拟主机快速搭建个人网站?  如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?  高防服务器租用如何选择配置与防御等级?  如何解决ASP生成WAP建站中文乱码问题?  网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?  C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)  c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】  北京网站制作公司哪家好一点,北京租房网站有哪些?  购物网站制作公司有哪些,哪个购物网站比较好?  教学网站制作软件,学习*后期制作的网站有哪些?  建站之星收费标准详解:套餐费用及年费价格表一览  如何快速使用云服务器搭建个人网站?  武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?  如何快速搭建支持数据库操作的智能建站平台?  公众号网站制作网页,微信公众号怎么制作?  青浦网站制作公司有哪些,苹果官网发货地是哪里?  如何在服务器上配置二级域名建站?  如何在Windows虚拟主机上快速搭建网站?  电商网站制作价格怎么算,网上拍卖流程以及规则?  免费制作小说封面的网站有哪些,怎么接网站批量的封面单?  如何快速搭建安全的FTP站点? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。