更改recyclerview中最后几个项目的跨度计数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了更改recyclerview中最后几个项目的跨度计数相关的知识,希望对你有一定的参考价值。

我正在尝试实施公交车预订座位布局并完成这个座位布局我正在使用跨度计数为4的Gridlayoutmanager。但我需要获得跨度为5的最后一排座位。请帮忙。

我尝试过获得跨度但不能正常工作。

答案

因此,列中需要4行或5行。将列分为(4 * 5)或20空格。然后给出最后5个坐位的5个空间(20/4)并为其他座位提供4个空间(20/5)。例如:

GridLayoutManager glm = new GridLayoutManager(getContext(), 20);
    glm.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() 
        @Override
        public int getSpanSize(int position) 
            if (position < TotalSeat-5)
                return 5;
            else return 4;
        
    );

我想你可能理解我的想法。 谢谢

以上是关于更改recyclerview中最后几个项目的跨度计数的主要内容,如果未能解决你的问题,请参考以下文章

加载数据后 Recyclerview 项目高度更改

RecyclerVIew 中使用 GridLayoutManger 的装饰间距和跨度

如何将 GridLayoutManager 中的项目固定为具有不同跨度计数的父项的开始和结束

RecyclerView GridLayoutManager:如何自动检测跨度计数?

根据项目位置动态更改 StaggeredGridLayout 的列跨度计数

如何为跨度计数为 2 的 recyclerview 网格布局管理器的对角线列表项着色