EventBus使用过程很简单
EventBus官网

1.引入

// module.app build.gradledependencies {//...    implementation 'org.greenrobot:eventbus:3.2.0'}

2.创建Event

public class MessageEvent {    public final String message;    public MessageEvent(String message) {        this.message = message;    }}

3.设置监听和声明周期,以MainActivity的片段为例

    @Subscribe(threadMode = ThreadMode.MAIN)    public void onMessageEvent(MessageEvent event) {        Toast.makeText(getBaseContext(), event.message, Toast.LENGTH_LONG).show();    }    @Override    protected void onStart() {        super.onStart();        EventBus.getDefault().register(this);    }    @Override    protected void onStop() {        EventBus.getDefault().unregister(this);        super.onStop();    }

4.发送Event,这里在Application中模拟了一个异步任务

new Thread(new Runnable() {         @Override         public void run() {             try {                 Thread.sleep(3000);                 EventBus.getDefault().post(new MessageEvent("Hello bro"));             } catch (InterruptedException e) {                 e.printStackTrace();             }         }     }).start();`

更多相关文章

  1. Android——Activity生命周期
  2. Android:新手必备的常用代码片段整理(二)
  3. android - 常用知识点以及代码片段(不断更新)
  4. Android有用代码片段(一)(二)....
  5. [Android]当Activity启动模式为singleTask时的生命周期

随机推荐

  1. Vim,第三只手
  2. 【DB笔试面试710】在Oracle中,用哪个参数
  3. 内网绘图服务,老板乐的笑出大金牙
  4. 【DB笔试面试687】在Oracle中,常用的10046
  5. 从源码层次理解Spring事务
  6. 【DB笔试面试683】在Oracle中,什么是ORA-0
  7. 【DB笔试面试684】在Oracle中,什么是DUAL
  8. 【死磕ibatis】SqlMapClient 基本操作示
  9. 【DB笔试面试694】在Oracle中,什么是orato
  10. 唬人的Redis多线程,也就那么回事