• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > EventBus简单使用教程

EventBus简单使用教程

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了eventbus使用教程,eventbus3.0使用,eventbus使用,android eventbus使用,eventbus怎么使用等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

EventBus简单使用教程


大家好!</div> 首先申明一下,本人是一名初级Android程序员,刚接触EventBus(3.0的用法)有什么说的不对的地方还请大神指点一二。此文章是面向能力不强,对于大神级别就Easy了,废话不多说直接进入正题。</div>  </div> </div>  </div> EventBus是一款针对Android优化的发布/订阅事件总线。主要功能是替代Intent,Handler,BroadCast在Fragment,Activity,Service,线程之间传递消息.优点是开销小,代码更优雅。</div>  </div> 1.EventBus初步体验</div> </div>  </div> 程序运行输出日志如下</div>  </div> </div>  </div> EventBus.getDefault().register(this); 意思是注册当前界面所有方法</div> EventBus.getDefault().post("Hello EventBus"); 意思是寻找当前界面参数为一个的方法并且是被@Subscribe注解,并执行此方法。当执行发送事件post在线程1里执行,那么事件方法也在线程1里执行.</div> </div> 2.线程模型模式</div>  </div> 在EventBus的事件处理函数中需要指定线程模型,即指定事件处理函数运行所在的线程。EventBus中通常有四种线程模型,分别是PostThread(默认)、MainThread、BackgroundThread与Async。</div>  </div> PostThread:如果使用事件处理函数指定了线程模型为PostThread,那么该事件在哪个线程发布出来的,事件处理函数就会在这个线程中运行,也就是说发布事件和接收事件在同一个线程。</div>  </div> MainThread:如果使用事件处理函数指定了线程模型为MainThread,那么不论事件是在哪个线程中发布出来的,该事件处理函数都会在UI线程中执行。该方法可以用来更新UI,但是不能处理耗时操作。</div>  </div> BackgroundThread:如果使用事件处理函数指定了线程模型为BackgroundThread,那么如果事件是在UI线程中发布出来的,那么该事件处理函数就会在新的线程中运行,如果事件本来就是子线程中发布出来的,那么该事件处理函数直接在发布事件的线程中执行。在此事件处理函数中禁止进行UI更新操作。</div>  </div> Async:如果使用事件处理函数指定了线程模型为Async,那么无论事件在哪个线程发布,该事件处理函数都会在新建的子线程中执行。同样,此事件处理函数中禁止进行UI更新操作。</div>  </div> 接下来请看示例</div> </div>  </div> 输出日志如下:</div> </div>  </div> 发送事件在新的一个线程中执行</div> </div>  </div> 输出日志如下:</div> </div>  </div>  </div> 3.事件优先接收proiority使用</div> </div> </div>  </div>  </div>  </div>

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • EventBus简单使用教程

相关文章

  • 2017-05-26安卓生成二维码 ==。以及中文乱码问题,安卓生成中文乱码
  • 2017-05-26Loader详解,asynctaskloader详解
  • 2017-05-26组件RecyclerView的应用(一),组件recyclerview
  • 2017-05-26详细Android Studio + NDK范例
  • 2017-05-26Android入门(九)文件存储与SharedPreferences存储,
  • 2017-05-26开启新的activity获取它的返回值,activity获取返回值
  • 2017-05-26ListView和Adapter的配合使用以及Adapter的重写,listviewadapter
  • 2017-05-26WebView,androidwebview
  • 2017-05-26RecyclerView在软键盘弹出时自动调整内容技巧,recyclerview技巧
  • 2017-05-26Android 手机卫士17--缓存清理,android17--

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • Android反编译和二次打包实战
    • AppLaunchChecker
    • 4.2.3 Service精通
    • Android Studio上面使用Ndk JNI 开发工程
    • [Android学习]ListView显示多种item的处理办法
    • Android Studio安装指南及genymotion配置
    • Service的启动与停止、绑定与解绑,service停止绑定
    • 改变RadioButton的文字位置以及距离,radiobutton文字
    • android studio导入PullToRefresh教程
    • Android 实用代码片段,

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有