最近项目中遇到这个需求 比较复杂 activity中有个抽屉 可以上拉下拉 抽屉里用viewpager管理三个fragment 每个fragment中都有recycleview 滑动冲突事件挺多额。。。
由于不擅长处理冲突 就想的是通过监听fragment中的recycleview滑动来改变activity中的控件的大小 那么问题来了 怎么实现呢? 我起初写了个接口回调 但是并没有卵用 在recycleview滑动的时候调用接口方法 让activity实现 但是老是报我要修改的那个控件为空 经过几个小时的奋战 我投降了 不得不换一种方式 后来想着用EventBus发送消息试试 结果没问题 我写了个Demo分享出来 需要的可以参考:
1.recycleview添加滑动监听
2.看的出来 这个方法里面有滑动的三种状态 注释上都有 我就不再解释了 我们可以根据自己的需求选择在其中某个状态下给activity发送消息 那么 怎么发送呢
仔细找 图中的EventBus 就是这么一行代码 把我们activity中想要的值发送过去 如果不需要 也可以发 发过去不用就是了 至于EventBus的用法 就是把他的jar包导入到项目中 就可以用啦 用法自己百度 我这里也不说了 当我们滑动recycleview就会发送这个消息到activity中 下面我们就看看在activity中怎么接收的
没错 就是这个方法 我们直接在这个方法中就可以拿到发送过来的信息 然后就可以通过recycleview的滑动来改变这里面的控件了,今天就吹到这里 困的不行了 闪