一、EventBus和广播
EventBus的功能有点类似广播,但广播比较消耗资源,比较重量级,可以获得Context 、intent参数,这两个参数可以调用许多的sdk中的方法,而eventbus获得这两个参数相对比较困难,如果需要同 android 交互的时候,广播会非常的便捷性,一般系统级的事件可以通过广播发送和接收,还有推送也会用到广播。
EventBus不依赖于 Context,使用简单,快速且轻量。eventbus的缺点是他的代码逻辑不是很清楚,所以开发者在使用的时候一定要写好注释。
二、EventBus的普通事件和粘性事件
普通事件:先注册接收事件,才能接收别人发送的 postevent;
粘性事件:事件消费者在事件发布之后才注册的也能接收到该事件。
三、EventBus的使用方法
一下以粘性事件举例:
首先定义一个事件
public class AEvent
{
List listData;
public AEvent(List listData)
{
this.listData = listData;
}
public List getListData()
{
return listData;
}
public void setListData(List listData)
{
this.listData = listData;
}
}
应用EventBus发送一个粘性事件,如下
private void postStickyEvent(Object event)
{
EventBus
EventBus3.1.1的粘性事件postSticky和事件postevent使用
最新推荐文章于 2025-03-06 23:30:00 发布