码迷,mamicode.com
首页 > 移动开发 > 详细

Android RecyclerView使用GridLayoutManager间距设置

时间:2018-05-16 16:43:38      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:alt   position   strip   中间   extends   fse   使用   第一个   package   

使用RecyclerView设置间距,需要重写RecyclerView.ItemDecoration这个类。有如下的效果图需要实现,间距只有中间的格子和底部的格式之间有。

 
技术分享图片
Paste_Image.png

实现方法很简单,因为这个效果是每一行有3个格子,只要每行的第一个格式左边间距为0即可以。其他都设置左边距和底部距离。

代码如下:

public class SpaceItemDecoration extends RecyclerView.ItemDecoration {

    private int space;

    public SpaceItemDecoration(int space) {
        this.space = space;
    }

    @Override
    public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {
        //不是第一个的格子都设一个左边和底部的间距
        outRect.left = space;
        outRect.bottom = space;
        //由于每行都只有3个,所以第一个都是3的倍数,把左边距设为0
        if (parent.getChildLayoutPosition(view) %3==0) {
            outRect.left = 0;
        }
    }

}

 

Android RecyclerView使用GridLayoutManager间距设置

标签:alt   position   strip   中间   extends   fse   使用   第一个   package   

原文地址:https://www.cnblogs.com/zhujiabin/p/9046407.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!