zoukankan      html  css  js  c++  java
  • 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);
    

    来发送消息。

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

  • 相关阅读:
    【bzoj4066】 简单题
    【bzoj1941】 Sdoi2010—Hide and Seek
    【bzoj2648】 SJY摆棋子
    【poj2154】 Color
    【poj2409】 Let it Bead
    【codevs1106】 篝火晚会
    【poj3270】 Cow Sorting
    【bzoj1004】 HNOI2008—Cards
    【bzoj3143】 Hnoi2013—游走
    【codeforces 749E】 Inversions After Shuffle
  • 原文地址:https://www.cnblogs.com/cwr941012/p/5681827.html
Copyright © 2011-2022 走看看