2
我在使用GridLayoutManager填充回收器视图时遇到问题。首先按行填充GridLayoutManager,然后按列填充
我需要完成第一行,完成之后,转到第二行。我做了一个算法,对列表重新排序,以便它能够正确显示,并且我可以在不做任何映射的情况下点击项目。这工作正常,但所有项目都可以在屏幕上显示而不滚动时出现问题。
例如,我有4个项目,我需要在2行网格布局(水平布局)中显示它们。屏幕上有3个项目的空间,所以我需要它们在第一行,而第四个项目应该是第二行中的唯一一个。
为了让你的照片我都默认:
0 2
1 3
而我需要的是:
0 1 2
3
任何想法?
编辑: 按照要求,这里是我使用的代码:
GridLayoutManager layoutManager = new GridLayoutManager(getContext(),2,LinearLayoutManager.HORIZONTAL, false);
如果失败,您可以将“null”或“”添加到您的数组,直到它被您想要的列数(此例中总共为6个元素)均匀分割为止。这将在第二行填充两个额外的列,但没有任何内容,但仍然将它们添加到布局。 – keag
第一种方法是我尝试过并且没有工作的方法。默认情况下,它不会显示您提到的项目(查看问题如何订购项目)。第二种方法不应该工作! 我结束重新排列整个列表以匹配预期的结果,但没有一个明确的解决方案来解决这个问题。 无论如何,谢谢! –
你如何声明你的gridLayoutManager,你可以用你现有的代码更新你的答案吗? – keag