感觉网上的大神很多都已经写的很详细了,所以这里我只打算大体地记一下笔记,不想记录那些很复杂的代码,只想记一下基本的用法.
EventBus的初步用法感觉并不是很复杂,至少在这里我感觉貌似常见的使用就是在activtiy以及fragment这两个有着固定创建和销毁的流程式view中.一般是在oncreate方法中进行绑定,在ondestroy中进行解绑,绑定和解绑的方法也很固定
EventBus.getDefault().register(this);
EventBus.getDefault().unregister(this);
在注册的时候会扫描this中的所有带有onEvent+*Thread形式的方法,通过反射的方式将其关联起来.
其中post方法是用于发送事件的,发送的事件会被相同类型参数的onEvent*Thread方法接收并且处理,所以需要有一定的甄别机制,不然可能会出问题= =
最后是EventBus的threadMode的种类
onEventMainThread代表这个方法会在UI线程执行
onEventPostThread代表这个方法会在当前发布事件的线程执行
BackgroundThread这个方法,如果在非UI线程发布的事件,则直接执行,和发布在同一个线程中。如果在UI线程发布的事件,则加入后台任务队列,使用线程池一个接一个调用。
Async 加入后台任务队列,使用线程池调用,注意没有BackgroundThread中的一个接一个。也就是同时,同步

EventBus初解相关推荐

  1. EventBus的粘性事件原理

    EventBus也称事件总线,根据发送事件的类型分为普通事件和粘性事件. 粘性事件的用法: 1.订阅的时候加上sticky = true @Subscribe(threadMode = ThreadM ...

  2. Caused by: org.greenrobot.eventbus.EventBusException: Subscriber class com.baidu.iov.dueros.film.ui

    这个错误是EventBus 包的错误 指向了EventBus.getDefault().register(this); 处理这个错误到EventBus 接受的地方 1 看看接受值是否写了 2  @Su ...

  3. EventBus的使用(一看就懂)

    今天使用EventBus 遇到一个小bug ,这里记录下其使用 先啰嗦一下,这边博客是说怎样使用的,没有涉及到什么原理,在看之前,你或许百度了很多博客 都是MainActivity 接受消息,Seco ...

  4. Android中的eventBus传值

    第一步:在build.gradle中添加依赖dependencies { compile 'org.greenrobot:eventbus:3.0.0'} 第二步:创建一个 Event类: 注意:en ...

  5. EventBus设计之禅

    前言 笔者看过一些知名开源项目的源码,认为 EventBus 算是其中最简单的,甚至复杂程度不在一个级别上.解析源码前先提一下以下几个变量和类,掌握了这些变量和类基本上 EventBus 已经就掌握一 ...

  6. 【转】EventBus 3.0使用详解

    原文:https://www.jianshu.com/p/f9ae5691e1bb 01 前言 当我们进行项目开发的时候,往往是需要应用程序的各组件.组件与后台线程间进行通信,比如在子线程中进行请求数 ...

  7. Android框架之路——EventBus的使用

    一.简介 EventBus是由greenrobot 组织贡献的一个Android事件发布/订阅轻量级框架.EventBus是一个Android端优化的publish/subscribe消息总线,简化了 ...

  8. EventBus源码解析

    前面一篇文章讲解了EventBus的使用,但是作为开发人员,不能只停留在仅仅会用的层面上,我们还需要弄清楚它的内部实现原理.所以本篇博文将分析EventBus的源码,看看究竟它是如何实现"发 ...

  9. Android 源码分析之 EventBus 的源码解析

    1.EventBus 的使用 1.1 EventBus 简介 EventBus 是一款用于 Android 的事件发布-订阅总线,由 GreenRobot 开发,Gihub 地址是:EventBus. ...

最新文章

  1. 为HTML5的未来制定学习计划
  2. mysql全拼_Mysql中取得汉字的全拼、拼音首字母
  3. Web设计里的软件工程思想
  4. android学习笔记25——事件处理Handler
  5. 这20个常规Python语法你都搞明白了吗?
  6. 在科学计算机中如何按正切,科学计算器算三角函数
  7. 【PS】免费 使用PS批量将pdf转换成图片 pdf转图片 pdf转jpg pdf转png
  8. 遇到网页文字无法复制的解决方法
  9. 计算机二级excel常见函数函数多表求和,excel sumif函数多条件求和 sumif的高级用法:跨多表条件求和...
  10. matlab线性拟合
  11. AI简史 | 星际英雄传说
  12. 从汽车到可穿戴设备的设计都利用 PMIC 实现电源效率
  13. 蚂蚁金服上市估值2k亿美金!会开发到底有多吃香?
  14. C++之operator关键字作用(一百一三十)
  15. 新疆独库公路,一生一定要走一次!
  16. text-davinci-002与 text-davinci-003 有什么不同?
  17. java类似金山打字的键盘模拟_java实现 swing模仿金山打字 案例源码
  18. 李嘉诚收购英国电信公司遭英国官方要求封杀
  19. 字节终面只问了1个框架问题,我被录取了!
  20. 酶切位点分析(the analysis of enzyme sites)

热门文章

  1. python 进度条程序_Python:显示程序运行进度条
  2. linux修改定时后如何保存文件夹,linux定时任务的一些相关操作汇总
  3. socketmq 设置队列大小_C++编程实例:面向对象的整形队列实现
  4. oracle数据库详细性能参数,ORACLE数据库性能参数的优化
  5. html5父子页面数据传递,使用iframe标签嵌套页面时 如何进行父子页面通讯/传值...
  6. Java library util_sdejavautil.dll,下载,简介,描述,修复,等相关问题一站搞定_DLL之家
  7. 图像标记工具Labelme和LabelImg
  8. java封装,继承和多态
  9. python跟php如何共用mysql_Python 3 多个函数共用一个mysql连接
  10. android4被淘汰,这五类安卓手机已经被淘汰,购买时别贪便宜,需慎重考虑!