特点:
1、能够实现listview效果,并且能够水平和竖直方向滑动。
2、能够实现gridview效果,并且能够水平和竖直方向滑动。
3、能够实现瀑布流的效果。
4、高度解耦,非常的灵活,简单的设置就可以显示以上三种效果。
5、内部封装了ViewHolder,根据实际需求来定义。
接下来说说他的实现步骤:
1、导入jar包,这里特别注意,这个jar包在recycleview-v7包下,在support-v7包下无法找到。
2、在oncreate方法里面设置布局管理器,不设置布局管理器无法显示,来设置想要的效果。代码如下:
3、给Recycleview设置适配器。复写onCreateViewHolder、onBindViewHolder、getItemCount最后还要自定义viewholder,按照需求来设置。
onCreateViewHolder:创建新View,被LayoutManager所调用
onBindViewHolder:将数据和界面进行绑定。
getItemCount:返回布局总个数。
在这里对于Recycleview的每个item的监听没有提供类似以listview的setOnItemClickListener的监听方法,如果需要监听的话,有三种方法:一是:修改源码,谷歌也不建议这样做,另一种是自已定义一个回调,实现此功能。还有一种是给控件设置setOnClickListenter点击事件,进行操作。
注意:有人在onCreateViewHolder中使用View的静态方法,View.Inflact(),这样时加载不出来效果的,应该使用getLayoutInflater(),这个才能显示出来效果