使用RecyclerView Android Studio在不同行上设置列

使用RecyclerView Android Studio在不同行上设置列,android,android-studio,android-recyclerview,grid,gridlayoutmanager,Android,Android Studio,Android Recyclerview,Grid,Gridlayoutmanager,Aoa我想让Recyclerview展示如下: 我使用了下面的GridLayoutManager代码,但得到的输出如下 GridLayoutManager manager = new GridLayoutManager(this, 2); manager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() { @Override public int getSpanSize(int pos

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);


请告诉我这是可能的吗?如果是,那么怎么做?

我认为解决方案可能是: 因为你要做的是发送从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??看来你走的路是对的,小小的试验就能奏效:)祝你好运