Android 在位置后使用ItemEdition装饰回收视图

Android 在位置后使用ItemEdition装饰回收视图,android,android-recyclerview,Android,Android Recyclerview,可以从某个位置开始装修吗 在我的例子中,装饰是以像素为单位的元素之间的水平间距: public class HorizontalSpaceItemDecoration extends RecyclerView.ItemDecoration { private final int mHorizontalSpaceHeight; public HorizontalSpaceItemDecoration(int mHorizontalSpaceHeight) { t

可以从某个位置开始装修吗

在我的例子中,装饰是以像素为单位的元素之间的水平间距:

public class HorizontalSpaceItemDecoration extends RecyclerView.ItemDecoration {

    private final int mHorizontalSpaceHeight;

    public HorizontalSpaceItemDecoration(int mHorizontalSpaceHeight) {
        this.mHorizontalSpaceHeight = mHorizontalSpaceHeight;
    }

    @Override
    public void getItemOffsets(Rect outRect, View view, RecyclerView parent,
                           RecyclerView.State state) {
        outRect.bottom = mHorizontalSpaceHeight;
    }
}

因此,是否可以不在第一行之后添加此间距,并从第二行开始

只需将第一项从装饰中排除,如

public class HorizontalSpaceItemDecoration extends RecyclerView.ItemDecoration {

    private final int mHorizontalSpaceHeight;

    public HorizontalSpaceItemDecoration(int mHorizontalSpaceHeight) {
        this.mHorizontalSpaceHeight = mHorizontalSpaceHeight;
    }

    @Override
    public void getItemOffsets(Rect outRect, View view, RecyclerView parent,
                           RecyclerView.State state) {
        int itemPosition = parent.getChildPosition(view);
        if(itemPosition>0){ //here we are excluding 1st item 
           outRect.bottom = mHorizontalSpaceHeight;
        }
    }
}

只需将第一项从装饰中排除,如

public class HorizontalSpaceItemDecoration extends RecyclerView.ItemDecoration {

    private final int mHorizontalSpaceHeight;

    public HorizontalSpaceItemDecoration(int mHorizontalSpaceHeight) {
        this.mHorizontalSpaceHeight = mHorizontalSpaceHeight;
    }

    @Override
    public void getItemOffsets(Rect outRect, View view, RecyclerView parent,
                           RecyclerView.State state) {
        int itemPosition = parent.getChildPosition(view);
        if(itemPosition>0){ //here we are excluding 1st item 
           outRect.bottom = mHorizontalSpaceHeight;
        }
    }
}

工作得很有魅力。谢谢工作得很有魅力。谢谢