RecyclerView学习笔记整理(2)布局样式学习

网格样式

网格样式可以帮助我们非常快速的制作一些格子化的东西而不用去考虑如何去实现一些麻烦的布局问题。
RecyclerView展示的样式是有布局管理器LayoutManager来控制。网格样式的管理器是GridLayoutManager,看一下它最常用的两个构造函数以及参数含义。
GridLayoutManager(Context context, int spanCount)

spanCount,每列或者每行的item个数,设置为1,就是列表样式
该构造函数默认是竖直方向的网格样式

GridLayoutManager(Context context, int spanCount, int orientation,boolean reverseLayout)

spanCount,每列或者每行的item个数,设置为1,就是列表样式
网格样式的方向,水平(OrientationHelper.HORIZONTAL)或者竖直(OrientationHelper.VERTICAL)
reverseLayout,是否逆向,true:布局逆向展示,false:布局正向显示
// 竖直方向的网格样式,每行四个Item
mLayoutManager = new GridLayoutManager(this, 4, OrientationHelper.VERTICAL, false);
mRecyclerView.setLayoutManager(mLayoutManager);

// 竖直方向的网格样式,每行2个Item,item格式是如果没有定义的话间距和大小都是自动设置的
mLayoutManager = new GridLayoutManager(this, 2, OrientationHelper.VERTICAL, false);
mRecyclerView.setLayoutManager(mLayoutManager);

RecyclerView学习笔记整理(2)布局样式学习_第1张图片

对边框进行划线新建一个line_divider.xml

注意:这里的shape.xml的文件不要搞错,搞错的话就会出现一些问题,还有隐藏注释一定要是用< !-- -->

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <solid android:color="@android:color/holo_blue_light"/>
    <size android:height="4dp" android:width="4dp"/>
    <!--蓝色的矩形-->
</shape>

然后在styles.xml中新建一个属性

    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="android:listDivider">@drawable/line_divider</item>
    </style>

你可能感兴趣的:(安卓开发,RecyclerView)