Android Recyclerview:点击按钮将行从线性更改为网格
在点击按钮时,我想将列表视图更改为购物车页面上的gridview,但我的布局如下图所示Android Recyclerview:点击按钮将行从线性更改为网格,android,android-studio,android-recyclerview,gridlayoutmanager,linearlayoutmanager,Android,Android Studio,Android Recyclerview,Gridlayoutmanager,Linearlayoutmanager,在点击按钮时,我想将列表视图更改为购物车页面上的gridview,但我的布局如下图所示 //For displaying the row as linear list view case R.id.ivGrid: ivList.setVisibility(View.VISIBLE); ivGrid.setVisibility(View.GONE); LinearLayoutManager llm = new LinearLayoutManager(cont
//For displaying the row as linear list view
case R.id.ivGrid:
ivList.setVisibility(View.VISIBLE);
ivGrid.setVisibility(View.GONE);
LinearLayoutManager llm = new LinearLayoutManager(context);
rcvProducts.setLayoutManager(llm);
break;
//For displaying the row as gridview
case R.id.ivList:
ivList.setVisibility(View.GONE);
ivGrid.setVisibility(View.VISIBLE);
GridLayoutManager glm = new GridLayoutManager(this,2,GridLayoutManager.VERTICAL, false);
rcvProducts.setLayoutManager(glm);
break;
只需使用GridLayoutManager,将跨度计数从1更改为2,然后再更改
view.setOnClickListener(new View.OnClickListener(){
public void onClick(View view){
GridLayoutManager layoutManager = (GridLayoutManager) grid.getLayoutManger();
layoutMananger.setSpanCount(layoutManager.getSpanCount() == 2 ? 1 : 2);
}
})
如果我没有错的话,它的布局管理器负责决定recyclerview的格式。适配器只是帮助将数据放入视图中;我们必须同时更新这两个版本,这是一个耗时的过程,这是一个完全错误的方法!!