美文网首页
EventBus使用

EventBus使用

作者: XiaoXred | 来源:发表于2020-10-10 14:05 被阅读0次

    1. 添加依赖

    implementation 'org.greenrobot:eventbus:3.0.0'

    2. 注册

    EventBus.getDefault().register(this);

    3.构造消息发送类(post调用的对象)

    public class Student {

    private String name;

    private int age;

    public Student(String name, int age) {

    this.name = name;

    this.age = age;

    }

    public void setName(String name) {

    this.name = name;

    }

    public void setAge(int age) {

    this.age = age;

    }

    public String getName() {

    return name;

    }

    public int getAge() {

    return age;

    }

    }

    4.发布消息

    EventBus.getDefault().post(new Student("刘哈哈", 27));

    5.接收消息:可以有四种线程模型选择

    //接收事件

    @Subscribe(threadMode = ThreadMode.MAIN)

    public void studentEventBus(Student student){

    mShow.setText("姓名:"+student.getName()+" "+"年龄:"+student.getAge());

    }

    6.解注册(防止内存泄漏)

    EventBus.getDefault().unregister(this);

    Demo( 普通事件 ):

    1.自定义事件(类似定义JavaBean,例子定义的student类),包含用户的姓名和年龄;

    2.在onCreate方法中注册订阅者,在onDestroy中解注册。

    3.在另一个activity中发送事件,让订阅者能够接收

    参考文章

    相关文章

      网友评论

          本文标题:EventBus使用

          本文链接:https://www.haomeiwen.com/subject/envrrktx.html