final int childCount = parent.getChildCount();
for (int i = 0; i < childCount; i++) {
final View child = parent.getChildAt(i);
parent.getLayoutManager().getDecoratedBoundsWithMargins(child, mBounds);
final int right = mBounds.right + Math.round(child.getTranslationX());
final int left = right - mDivider.getIntrinsicWidth();
mDivider.setBounds(left, top, right, bottom);
mDivider.draw(canvas);
}
全部等分的话我觉得在我发给你的类的基础上设置最外层布局为math_parent就可以了
其实你可以看一下RecyclerView.ItemDecoration这个类的源码,它是一个抽象类,你自己写一个类去继承它,然后重写他的onDraw方法,(你可以参考一下DividerItemDecoration这个类是怎么写的),你在重写onDraw方法的时候你是是持有RecyclerView这个父View的,你可以通过 parent.getChildCount()来获取到itemView,这样你就有itemView的宽和高
就上面一样,这样你可以以定制自己的想要的itemView排放位置
用我写的这个类吧: