RecyclerView没有可以直接设置间距的属性,但可以用ItemDecoration来装饰一个item,所以继承重写ItemDecoration就可以实现间距了
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) {
if(parent.getChildPosition(view) != 0)
outRect.top = space; //竖直布局 //outRect.left = space; 水平的布局
}
}然后在使用RecyclerView的地方:
int spacingInPixels = getResources().getDimensionPixelSize(R.dimen.lift);
mRecyclerView.addItemDecoration(new SpaceItemDecoration(spacingInPixels));这样运行就可以看见效果了
本文介绍了一种在RecyclerView中为每个item设置间距的方法。通过创建SpaceItemDecoration类并重写getItemOffsets方法,可以实现在RecyclerView中任意调整item之间的间距。
1107

被折叠的 条评论
为什么被折叠?



