EvnetBus消息传递 优化写法较传统写法更好理解、使用
2016-12-30 16:36
423 查看
首先需要了解基本使用
EventBus 使用心得及技巧 :http://blog.csdn.net/u010566681/article/details/52119931
EventBus的StickyEvents黏性事件详解及使用说明
http://blog.csdn.net/u010566681/article/details/52512851?locationNum=1&fps=1
EventBus 发现了一种更好 更简单的实现方式:
/** * 点击事件事件 */ public class ClickEvent { public enum Type { //发送消息 SEND_MSG, } public Type type; public View view; public Object data; public ClickEvent(Type type, View view, Object data) { this.type = type; this.view = view; this.data = data; } }
这里定义了一个发送消息的事件SEND_MSG,在点击某个view的时候就可以发送事件
EventBus.getDefault().post(new
ClickEvent(ClickEvent.Type.SEND_MSG,
v, position));
EventBus.getDefault().post(new ClickEvent(ClickEvent.Type.SEND_MSG, v, position));
事件接收
public void onEventMainThread(ClickEvent event) { switch (event.type) { case SEND_MSG: //接收到消息,可以在此进行处理 break; } }
因为接收消息是全局的,如果我们发送消息,而不加type类型的话,那就都会被接收,造成逻辑混乱
所以每次都需要把类型定义一下。
相关文章推荐
- mysql 多数据源多主一从复制
- openStack windows时间偏移
- Java理论知识和编程问题总结
- Centos6.5编译安装zabbix2.2通过snmp协议监控路由器
- 需要纯手写的登录界面
- iTop 2.4.0 中文汉化版
- java 字节码校验
- beego实现过滤器功能
- 深入浅出 消息队列 ActiveMQ (转)
- C语言实现简单的通信录
- 17的序
- django运行错误:wrong number of arguments for 'set' command
- WebUploader 图片上传控件使用范例
- 转载一篇React native的props的用法
- 【C#】【Thread】Barrier任务并行
- 利用Nginx构建负载均衡服务器
- linux定义变量内存地址分配顺序
- threejs第五篇【一条龙测试之四 threejs 给obj模型贴图】
- Cornerstore的使用介绍
- wamp环境下用phpstudy对hosts和httpd.conf的配置