我有一个RecyclerView
。我想实现以下目标(每个圆圈是一个RecyclerView
项目):
每个圆圈的大小可能不同。
我尝试使用GridLayoutManager
,但事实证明我需要提供spanCount
,这与我的情况不符。
答案 0 :(得分:1)
对于RecycleView,可以使用GridLayoutManager来实现具有不同单元格跨度的网格形式的RecycleView布局。您会在互联网上找到许多tutorials有关如何实现它的信息。
GridLayoutManager layoutManager = new GridLayoutManager(this, 6);
layoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
@Override
public int getSpanSize(int position) {
// Use whatever logic you need here to decide how
// many columns to span for any given row position
if (position % 2)
return 3;
else
return 6;
}
});
然后在onBindViewHolder中根据需要更新每个视图的LayoutParams.width。