使用 RecyclerView Android Studio 在不同行上设置列
Posted
技术标签:
【中文标题】使用 RecyclerView Android Studio 在不同行上设置列【英文标题】:Set Column on Different Rows using RecyclerView Android Studio 【发布时间】:2020-09-29 14:19:56 【问题描述】:Aoa 我想要这样的 Recyclerview 节目:
我在下面使用了 GridLayoutManager 代码但是我得到了这样的输出
GridLayoutManager manager = new GridLayoutManager(this, 2);
manager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup()
@Override
public int getSpanSize(int position)
return (position % 3) > 0 ? 1 : 2;
);
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(MainActivity.this);
UserAdapter userAdapter = new UserAdapter(this,userModelList);
rvItem.setLayoutManager(manager);
rvItem.setAdapter(userAdapter);
请指导我这是可能的吗?如果是,那么如何?
【问题讨论】:
【参考方案1】:我认为解决方案可能会执行以下操作: 由于您正在做的是发送范围从 i=0 到 n 的位置,并且您使用模数 3 。因此,如果 i=0 和 i>0 为假,这就是为什么第一行是 1 而第二行是 i=1 和 i>0 这就是为什么你得到 2 ...
@Override
public int getSpanSize(int position)
return (position % 3) > 0 ? 2 : 1;
如何切换三元条件并尝试使用模 2 而不是 3 ?或者也许切换 2 和 1 ??看来您走在正确的道路上,一点点实验就可以解决问题:) 祝你好运!!!
【讨论】:
以上是关于使用 RecyclerView Android Studio 在不同行上设置列的主要内容,如果未能解决你的问题,请参考以下文章
Android Kotlin - 用于 RecyclerView 的 setOnTouchListener 和所有项目子视图/里面的所有内容