Android RecyclerView使用GridLayoutManager间距设置

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

 
Paste_Image.png

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

代码以下:spa

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; } } }
相关文章
相关标签/搜索