网格布局管理器中的 Spancount 我想要第 1 行中的一个项目,第 2 行中的 5 个项目,每行其余 2 个项目

Spancount in the grid layout manager i want one item in row 1 5 item in row 2 and rest 2 item per row

我想在第 1 行中实现 1,5 和 2 个项目的网格布局管理器我想要第 2 行中的一个项目我想要 5 个项目然后剩下的我想要 2 个项目。如何实现这一目标。请帮助我进行相同的编码,但无法在第 2 行中实现 5,只有 3。

gridLayoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
        @Override
        public int getSpanSize(int position) {
            if (position == 0)
                return 5;
            else if (position == 1)
                return 1;
            else
                return 2;

        }
    });

你没有提到你有多少个跨度,但我猜是 5 个。

您定义的跨度数应该能被每个项目的大小整除。因此,可以被 1(当然)、5 和 2 整除。1*5*2=10,10 个跨度就可以了。创建具有 10 个跨度的 GridLayoutManager

现在,如果您只想要一行中的一项,return 来自 setSpanSizeLookup() 的 10 个。如果您想要 2 件商品,则 return 5. 对于 5 件商品 return 2.

您的代码将如下所示:

mLayoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
    @Override
    public int getSpanSize(int position) {
        if (position == 0)
            return 10;
        else if (position < 6)
            return 2;
        else
            return 5;

    }
});