在RecyclerView中平均分配物品

时间:2018-01-06 11:13:14

标签: android android-layout android-recyclerview

目标:以某种方式水平显示项目列表(RecyclerView),它们在屏幕上均匀分布,并使它们之间的边距至少为X dp,以便View可滚动,如果不是所有视图都适合屏幕。

我希望以下图片能帮助您理解我的问题:

在这里,我得到了两个在屏幕宽度上均匀分布的项目: Few Items

我在这里收到了很多东西;最小边际"在项目之间使用,Recycler正在滚动 Lots of items

我事先测量了我的视图,然后手动计算视图之间的边距,并将其设置在onBindViewHolder内,从而实现了这种行为。这似乎是一种肮脏的方式,特别是当我需要为每个requestLayout调用itemView时。

我使用weights尝试了一些事情,但这似乎并不像预期的那样有效。我为LinearLayoutManager使用了RecyclerView

有没有人有任何建议如何以更好,更清洁的方式实现这种行为?

1 个答案:

答案 0 :(得分:0)

您可以使用 recyclerView.addItemDecoration 方法添加自定义项目装饰并解决间距问题。代码可以找到here。希望这会有所帮助。