本来eventBus是guava工具框架中很重要的一部分,是一个发布与订阅的事件总线工具,整个还是比较比较轻量级,对于一些高并发高吞吐量的场景还是很使用的,android eventBus就是基于此做了针对android移动端的框架,整个过程是异步的,解耦的,其余的也不多讲,这里简要介绍基本用法,原理的东西大家去看下源代码,代码不多。

1,默认用法

在activity的生命周期事件中注册或者取消注册事件,常规用法是onStart事件中注册eventBus事件,onStop事件中取消注册事件,并按照规范增加onEvent(String event)方法,该方法中可以实现自己的业务逻辑,如何分发事件,比如onClick中EventBus.getDefault().post(event),这里是整个应用中如何共享一个EventBus,而每个Activity中并没有定义全局的EventBus哦,具体实现可以看下源代码。

2,自定义事件

自定义事件,其余部分基本一致,唯独不同的是onEvent(Stirng event)的接收参数可以自定义,比如

private Class customEvent{

属性/方法

},按照约定实现的onEvent(CustomEvent event),其余并没有不同

3,不同线程模型执行回调事件

public void onEventBackgroundThread(String event) ;

public void onEventAsync(String event);

public void onEventMainThread(String event);

public void onEvent(String event);

4,延时执行模型

EventBus.getDefault().postSticky();

更多相关文章

  1. Android(安卓)中Canvas.drawBitmap()的使用
  2. Android消息机制(Handler)——深入源码解析
  3. android一些概念和知识
  4. 如何判断一个点在任意四边形内
  5. android账号与同步之同步实现
  6. Android(安卓)- Handler 、AsyncTask(二)
  7. android 录音事件
  8. Android开发全程记录(十四)——Android显示gif动画的方法
  9. Android(安卓)View的layout_width属性是如何解析的

随机推荐

  1. 尝尝鲜|Spark 3.1自适应执行计划
  2. 使用Rust编写推箱子游戏基础篇
  3. java实操|mysql数据增量同步到kafka
  4. spark on yarn 内存分配详解
  5. 前端培训班出来的不会写项目怎么办?
  6. find和grep
  7. IP地址分类及网络配置方法和多网卡绑定技
  8. 拨开零售电商数字化转型迷雾,电商RPA应用
  9. Shiro源码分析----认证流程
  10. 前端技术分享:一个超级好用的CSS样式表