EventBus基本设计思路
来源:互联网 发布:淘宝怎么秒杀商品 编辑:程序博客网 时间:2024/05/21 13:06
EventBus基于观察者模式,如图,被观察者状态改变时通过post方法通知观察者。
一、首先是EventBus的基本使用
第一步
- 在各组件中注册(如Activity的onCreate(),Fragment的onViewCreate())
EventBus.getDefault().register(this);
第二步
- 取消订阅(如onPause()或onDestroy()中)
if (EventBus.getDefault().isRegistered(this)) { EventBus.getDefault().unregister(this);}
第三步
- 事件订阅(接收)方法
- 使用@Subscribe method: must be public, non-static, and non-abstract
- 只有一个参数
@Subscribepublic void onEventBusSubscribe(String mess) { Log.e("TAG",mess);}
第四步
- 发送事件(如在Activity,Fragment,BroadcastReceiver…中)
- post的类型须是某个订阅方法中的参数
EventBus.getDefault().post("msg");
二、基本原理
1、在register(this)时,将对象与订阅方法保存在Map中
2、在post时,通过post的参数类型找出订阅方法参数一致的方法及对于的对象,在通过 method.invoke(object(方法所在的对象),object(方法参数)) 执行订阅方法
1 0
- EventBus基本设计思路
- 简单工作流的基本设计思路
- 高并发web框架基本设计思路
- 高并发web框架基本设计思路
- 浅谈Java类库解耦基本设计思路
- EventBus基本理解
- Eventbus的基本使用
- Android EventBus 基本使用
- EventBus基本学习
- EventBus基本使用简介
- EventBus基本使用方法
- EventBus的基本使用
- EventBus基本介绍
- eventbus基本使用
- EventBus的基本使用
- EventBus基本使用
- EventBus基本使用
- 网络IP检测框架的基本设计思路
- MySQL数据库集群搭建
- 一个男人关心的东西 决定了他的层次
- TS流解析之二获取完整section
- leetcode 12. Integer to Roman
- JAVA虚拟机运行时数据区浅谈
- EventBus基本设计思路
- Android实现倒计时的按钮
- sql高效去重重复数据方法
- 杭电 2031 进制转换
- Java开发的23种设计模式
- iOS 屏幕适配frame 宏
- OGG-01296 Oracle GoldenGate Delivery for Oracle OGG-01668 Oracle GoldenGate Delivery for Oracle
- u-boot链接脚本解析
- MongoDB分片环境下的查询路由