-
***接下来要做grid样式和list样式混排的情况。 ***grid形式的RecyclerView一般都是一行有多列,但是list样式的可以看作是只有一列的grid样式。查看全部
-
***前面定义颜色种类的时候用的是R文件的id,而我们在那三个ViewHolder中设置背景颜色的时候用的是setBackgroundColor()方法,由于 该方法的参数接收的是资源文件,所以会产生异常,所以这里应该使用setBackgroundResource()方法查看全部
-
!!!将DataModel的对象data给add进list集合中、查看全部
-
***把所有的数据都放在一个Model当中,然后再取相应的字段就好。查看全部
-
!!!!查看全部
-
***接下来就要回到Adapter中的onCreatViewHolder()中做处理,因为在getItemViewType()方法中已经有相应的type进行返回了。所以只需要在conCreatViewHolder()方法中使用switch()语句做判断,switch()中值就是type.然后根据相应的type返回相应的ViewHolder。 ***在onBindViewHolder()中也要做相应的处理,因为该方法中是没有viewType的,所以要先通过getItemViewType(position)得到它。 ***如果那三个ViewHolder是没有继承那个抽象类的话,那么就要利用到switch()语句分别对每个VieeHolder进行绑定。例如:((TypeOneViewHolder)holder).bindHolder(mlist.getposition());//bindHolder()方法中的参数是该集合调用getPosition()得到的相应的位置。 如果那三个ViewHodler都继承了那个抽象类的话,那么只需要一行代码即可: ((TypeAbstractViewHolder)holder).bindHolder(mlis.getposition());查看全部
-
!!!查看全部
-
!!!查看全部
-
!!!查看全部
-
继承刚创建的那个抽象类。查看全部
-
***因为三个ViewHolder的里面都是要用到bindHolder()方法的,所以干脆创建一个抽象类,然后让那三个ViewHolder去继承这个抽象类, 然后去实现这个方法。注意:要让该抽象类去进程RecyclerView.ViewHolder。 ***如果有个别ViewHoler不需要实现那个bingHolder()方法的话,那个可以让那个抽象类中不要把bindHolder()方法定义为抽象的,然后就可以让子类进行重写该方法啦。查看全部
-
***三个item的布局写完之后,接下来要写holder。。 ***创建holder是有技巧的,因为这三个布局有很多功能是类似的。 ***三个item布局分别对应三个holder、 ***写holder的时候首先要清楚你写的holder是对应哪一个item布局的,然后去看下该布 局中定义了哪些控件,然后在对应的holder中进行声明。 ***之后在该holder的构造函数中得到这些控件。 ***然后写一个方法进行将ViewHolder里面的数据和外面的数据绑定起来查看全部
-
第三个item的布局、、查看全部
-
!!!查看全部
-
**接下来需要创建三个不同的item布局。 ***注意:这里利用了tools:text在该控件中写上了显示的内容,但是实际上运行起来,该控件并不会显示这些内容,而是显示 外部响应给它的数据,这里使用tools起到了工具的作用,方便让你提前查看到显示的效果。查看全部
举报
0/150
提交
取消