android关于EventBus的使用举例

项目需求:查看三级页面信息后回退到一级页面列表会刷新

在实现类中的oncreate方法中先声明 注册 相当于开始

regiestEventBus(true);  
   //是否注册EventBus
public void regiestEventBus(boolean isReggiested) { this.isReggiested = isReggiested; if (isReggiested) { EventBus.getDefault().register(this); } }

然后声明实现方法

 @Subscribe(threadMode = ThreadMode.MAIN)
    public void setTableChangEvent(EventMessage eventMessage) {
        listview.setRefreshing(true);
    }

这里的EventMessage是自己声明的空的类 ,个人理解一个形式参数

class EventMessage  {
}

然后listview.setRefreshing(true);是我要实现的方法,什么时候执行这个方法看自己的项目

在关联位置写入以下代码,这里的.post是发送的意思

EventBus.getDefault().post(new EventMessage());

连起来就是先注册,然后在需要的位置.post()发送信息,然后setTableChangEvent获取并

执行想要的方法这里

.post(new EventMessage()) 和
setTableChangEvent(EventMessage eventMessage) 参数需要对应 这样就实现了关联事件

 

posted @ 2020-12-30 10:47  null_lii  阅读(129)  评论(0)    收藏  举报