美文网首页
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