GridLayoutManager 设置居中对齐问题

时间:2024-03-31 11:40:12

最近一直在做RecyclerView下的item布局问题,除了常规的LinearLayout之外,还有比较常用的GridLayoutManager和StaggeredGridLayoutManager,后两种分别是九宫格布局、瀑布布局。本人这次主要适用了GridLayoutManager布局,但是在实现的过程中,发现了item的布局无法居中,每次显示完都会在界面的右边留有很大一部分空白,十分头疼。

如图:

GridLayoutManager 设置居中对齐问题

最右边有很大一片空白


自己调试了布局文件,找到了原因的所在:

在我的布局文件下,item的具体父布局设置的是具体的参数,而在GridLayoutManager设置的时候是需要设置每行显示的数目的,而这个设置就规定了每个布局的大小。所以,这两者产生了冲突。

代码截图:

GridLayoutManager 设置居中对齐问题

最开始这里设置的是具体参数。

然后我们更改为match_parent:

GridLayoutManager 设置居中对齐问题


代码中关于GridLayoutManager的设置:

GridLayoutManager 设置居中对齐问题



再次运行程序,结果如图:

GridLayoutManager 设置居中对齐问题

我们会发现已经改成了想要的效果。