recyclerView 实现适配器和增加条目点击和长按
2018-09-19 本文已影响130人
土肥圆的诺诺
recyclerView已经用了很久了,大部分时间都是使用的三方的adapter,但是最基本的我们也需要知道,毕竟万一哪天轮子没了呢?
这段代码就是经典的设置适配器
image.png
这段代码告诉我们想要继承RecyclerView.Adapter的泛型必须是VH extends RecyclerView.ViewHolder,那么我们就去实现一个最基本的viewHolder
image.png
image.png image.png
我们实现了自己的viewHolder,现在爆红是需要覆盖其中的方法
image.png
接下来我们要构建适配器的构造函数
一般来说我们会传入context和资源集合,传入contenx方便我们加载布局view
image.png
注意修改集合的长度为列表的长度,不然就空白不显示了
创建item布局,我这里比较简单为了演示而已,实际看个人需求。
image.png
我们实现viewHolder的创建
image.png
然后在绑定那里实现资源的设置
image.png
我们先来实验一下adapter能不能用了
image.png
验证完毕好像没啥问题,那我们继续下一步,增加条目的长按和点击事件
image.png
我们定义一个接口,模仿长按和点击条目,里面参数View和pos是为了方便我们回调view和点击的位置
image.png
在我们的adapter里面创建一个这个接口的引用,并生成set方法
image.png
可能有看官好奇,说为啥子这样,耐心继续下看
接下来我们要在onBindViewHolder这里做手脚了
image.png
我们先去实验下能不能实现效果
image.png
image.png
事实证明是可以的
当我们设置完适配器的时候,那么适配器里的itemClickListenner就不是null,当条目点击的时候,就相当于回掉了我们new出来的监听器的点击事件和长按事件,我们就能打印出相关的所需,这样下来一个最基本的监听事件就做完了
image.png