recyclerview gridlayout 平分中间空白区域

/**
 * @description  recyclerview   gridlayout 平分中间空白区域
 */
class UserGradeItemDecoration(val width:Int,val itemWidth: Int, val columns: Int,val topPadding:Int) : RecyclerView.ItemDecoration() {

    override fun getItemOffsets(outRect: Rect, view: View, parent: RecyclerView, state: RecyclerView.State) {

        var position = parent.getChildAdapterPosition(view);
        var totalCount = parent.adapter?.itemCount;

        // 可以适配任意列数(只要放的下)
        var w = (width - itemWidth * columns) / (columns * (columns-1));
        var p = position % columns;
        outRect.left = (w*p);
    }

}