Android 打一个「;“多行”;回收视图
因此,通常情况下,Android 打一个「;“多行”;回收视图,android,android-recyclerview,Android,Android Recyclerview,因此,通常情况下,RecyclerView是水平或垂直的,如下图所示: 我没有问题生产以上两个。但是现在,我想做一个RecyclerView,它是“多行”-ey(我不知道这是否是一个正确的命名方式)。基本上,就像在记事本中一样,如果选中“包装文本”,屏幕外的文本将发送到下一行 因此,该行为类似于HorizontalRecyclerView,但在进入下方之前,项目将首先水平填充 假设子项的每个大小都相同,将其置于屏幕中心也是一件好事 类似于: 但不喜欢(它不在屏幕中央): 顺便说一句,我更喜
RecyclerView
是水平或垂直的,如下图所示:
我没有问题生产以上两个。但是现在,我想做一个RecyclerView
,它是“多行”-ey(我不知道这是否是一个正确的命名方式)。基本上,就像在记事本中一样,如果选中“包装文本”,屏幕外的文本将发送到下一行
因此,该行为类似于HorizontalRecyclerView
,但在进入下方之前,项目将首先水平填充
假设子项的每个大小都相同,将其置于屏幕中心也是一件好事
类似于:
但不喜欢(它不在屏幕中央):
顺便说一句,我更喜欢我的收藏由
RecyclerView
管理,而不是TableLayout
,因为我以前从未使用过TableLayout
,而且RecyclerView
似乎是重用收藏布局最有效的方法。设置GridLayoutManager
用于RecyclerView
mRecycler.setLayoutManager(new GridLayoutManager(context, numberOfColumns));
参考:,有3种可能的方法可以安排您的RecyclerView布局
- LinearLayoutManager–用于传统列表
- GridLayoutManager–用于表视图
- 交错网格布局管理器-交错网格形成
对于您的问题,您可以使用@Ravi回答的GridLayoutManager
mRecycler.setLayoutManager(new GridLayoutManager(context, numberOfColumns));
要动态更改列数,您可以参考是否希望在布局的网格类型中显示recyclerView的项?那么@Ravi的答案是正确的。有什么方法可以动态设置列数吗?就像垂直和水平RecyclerView
一样,它可以动态地“调整”屏幕大小。在这种情况下,您可以找到屏幕大小,并根据需要执行自己的逻辑。例如,如果单元格大小为200,屏幕大小为800,则可以有3列或4列