最近一直在做RecyclerView下的item布局问题,除了常规的LinearLayout之外,还有比较常用的GridLayoutManager和StaggeredGridLayoutManager,后两种分别是九宫格布局、瀑布布局。本人这次主要适用了GridLayoutManager布局,但是在实现的过程中,发现了item的布局无法居中,每次显示完都会在界面的右边留有很大一部分空白,十分头疼。
如图:
最右边有很大一片空白
自己调试了布局文件,找到了原因的所在:
在我的布局文件下,item的具体父布局设置的是具体的参数,而在GridLayoutManager设置的时候是需要设置每行显示的数目的,而这个设置就规定了每个布局的大小。所以,这两者产生了冲突。
代码截图:
最开始这里设置的是具体参数。
然后我们更改为match_parent:
代码中关于GridLayoutManager的设置:
再次运行程序,结果如图:
我们会发现已经改成了想要的效果。