-
这是原来的Adapter。我们现在要进行改造,因为原来的Adapter只能够放一个list。查看全部
-
当三个Model里面放的字段各不相同的情况下该怎么办呢? ***创建好三个不相同的新的Model之后,然后在MainActivity中创建三个List。 并分别给它们添加相应的数据。查看全部
-
!!!三查看全部
-
!!!二查看全部
-
!!!一查看全部
-
效果图!查看全部
-
***注意:可以利用RecyclerView的实例方法addItemOffsets()来设置item之间的间隔. 首先要获得GridLayoutManager的LayoutParms的对象,因为通过LayoutParms可以拿到 RecyclerView当中当前位置的SpanSize值,为什么要拿到这个值?因为我们通过这个可以得知当前的SpanSize是1还是2,1表示当前那一行是有左右的,即是有两个item存在的,然后做间隔的处理。 ***spanIndex指的是:比如一行有两个item的时候,spanIndex等于0表示左边,1表示右边的。从0开始算。 ***outRect.top的值表示距顶部的距离,outRect.left的值表示与左边Item的距离 ***spanSize != gridLayoutManager.getSpanCount()表示当前那一行是有左右之分的。查看全部
-
!!!查看全部
-
***在每个item布局相对应的ViewHolder中,可以利用setBackgroundColor()方法为其item 设置背景颜色。查看全部
-
***然后可以在setSpanSizeLookup()方法里面写上相应的处理,首先要拿到每个item的type,所以通过RecyclerView的对象调用其实例方法得到其Adapter的对象,然后调用Adapter的实例方法getItemViewType()并传入对应的位置参数position即可得到。 ***接下来根据type去指定item的横跨值。 ***注意:调用GridLayoutManager的实例方法getSpanCount()得到的值就是当时创建该对象时传入的第二个参数的值,这里即2.查看全部
-
***对于之前说的要将一行两个item的形式变成一行一个item的形式的这样的跨度问题,这里要利用到GridLayoutManager的一个实例方法: setSpanSizeLookup(),它的返回值指的是:返回当前的item的横跨度是多少。比如说之前创建GirdLayoutManager的对象的时候传进去的第二个参数的值是2,那么在setSpanSizeLookup()方法中返回的值是1的话,则表示该item占二分之一,即占了一半,如果返回的值是2的话就表示当前这个item占据了整一行。可以理解成那第二个参数的值是分母,方法中返回的值是分子。查看全部
-
效果图。。查看全部
-
***现在对数据做一下分组,让前5个和16到19的type为1。查看全部
-
效果图。。注意:这里第一行中的第二列的右边应该还有个内容的,由于空间不够,所以压到第二行被覆盖了。查看全部
-
***首先给RecyclerView设置它的grid样式,那么就要使用到GridLayoutManager, 这里使用的GridLayoutManager的构造函数有两个参数,第一个参数是Context对象,第二个参数是个int值,这个int值的作用就是指定一行中有几列。然后把GridLayoutManager的对象传给setLayoutManager()方法中。查看全部
举报
0/150
提交
取消