Android中Recyclerview使用14----RecycleView的item间距设置

来源:互联网 发布:ctrl alt 互换 linux 编辑:程序博客网 时间:2024/05/01 14:20

转载地址:http://blog.csdn.net/csdndouniwan/article/details/51762269

 RecycleView 虽然相对ListView GridView 做了很多的优化。方便开发者的使用,性能也得到了很大的提高,但是悲剧的是RecycleView 设置Item间距并没有那么容易。。。


Java代码设置

调用

//RecycleView 增加边距int spacingInPixels = 8;mClassifyItemrecy.addItemDecoration(new SpacesItemDecoration(spacingInPixels));mClassifyItemrecy.setAdapter(mAdapter);


item设置间隔方法


public class SpacesItemDecoration extends RecyclerView.ItemDecoration {    private int space;    public SpacesItemDecoration(int space) {        this.space = space;    }    @Override    public void getItemOffsets(Rect outRect, View view,                               RecyclerView parent, RecyclerView.State state) {        outRect.left = space;        outRect.right = space;        outRect.bottom = space;        // Add top margin only for the first item to avoid double space between items        if (parent.getChildPosition(view) == 0)            outRect.top = space;    }}


如果你了别人的RecycleView 上拉加载下拉刷新,addItemDecoration 这个方法 不一定会给你加上,你可以在源码上自行添加。


public void addItemDecoration(RecyclerView.ItemDecoration decor) {    mRecyclerView.addItemDecoration(decor,-1);}