• EventBus3.0使用


    EventBus使用

    • 1.EventBus是有GreenDao公司提出的一个用于Android平台线程、进程间通信的库,使用方式简单粗暴,而且,库的大小不足50K,成本很低。

    EventBus的地址:在这里

    在这里我介绍一下EventBus 3.0的使用方式,目前搜索到的大部分资料都是针对EventBus 2.4的,在使用方式上,3.0版本比2.4版本更加自由。

    首先,在build.gradle中添加

     compile 'org.greenrobot:eventbus:3.0.0'
    

    其次,之后,在你需要接受发送的消息的类的构造函数/onCreate方法里面添加

    EventBus.getDefault().register(this);
    

    当然,添加了注册,不要忘记反注册

     EventBus.getDefault().unregister(this);
    

    之后,在这个类里面书写一个任意的public方法,参数就是你要接受的消息类型,

    public void helloEventBus(String message){}
    

    在这个方法上面添加 @Subscribe 注解,同时这里可以添加threadMode参数决定helloEventBus方法执行在什么线程上面,这里的参数分为

    参数 含义
    POSTING 与消息发送者在同一线程(默认)
    MAIN 执行在主线程
    BACKGROUND 执行在一个后台线程,会优先寻找发送者的线程,如果发送者执行在主线程,那么就新建一个后台线程
    ASYNC 执行在一个新的后台线程中

    在这里,同样支持添加优先级 priority 属性来决定在同种ThreadMode下面的处理任务的顺序。

    最后,在调用的地方使用

    EventBus.getDefault().post(message);
    

    来发送消息。

    使用篇就到这里,之后会继续写原理分析。
    ----------------我是萌萌哒的分割线---------------------

  • 相关阅读:
    Linux IO接口 监控 (iostat)
    linux 防火墙 命令
    _CommandPtr 添加参数 0xC0000005: Access violation writing location 0xcccccccc 错误
    Visual Studio自动关闭
    Linux vsftpd 安装 配置
    linux 挂载外部存储设备 (mount)
    myeclipse 9.0 激活 for win7 redhat mac 亲测
    英文操作系统 Myeclipse Console 乱码问题
    Linux 基本操作命令
    linux 查看系统相关 命令
  • 原文地址:https://www.cnblogs.com/cwr941012/p/5681827.html
Copyright © 2020-2023  润新知