安卓某micro project做的时候碰到关于RecyclerView显示不全的bug,折磨了几天,网上的solution并不奏效。
首先是一个gallery,这个gallery先是有个swipeRefreshLayout,里面镶嵌了一个RecyclerView,设置是列数为3的GridLayout。
首先看问题图片:
很明显,recyclerView中只显示了第一行。
网上搜了很多的blog,说是什么scrollView嵌套RecyclerView会出bug;也有人的case是自己的item设置的高度是match_parent导致第一行3个ITEM就占了满屏;或者有人说这里面嵌套gridView会出问题,建议重写其onMeasured函数。自己本来是想重写函数,结果根本找不到这个OnMeasured函数,无法override。
在这里卡了几天,几乎崩溃,甚至自己下了别人的程序,看了看别人怎么用的。结果就是:一样的调用逻辑,相同的组件嵌套,然后博主把自己的onCreateViewHolder函数写的跟人家的一样,布局改到一样,结果:人家的视图是这样的:

在安卓开发中遇到RecyclerView只显示第一行的问题,尝试了多种网上解决方案无效。问题在于RecyclerView的嵌套和item高度设置。通过调整item布局高度避免使用match_parent,以及检查RecyclerView的padding和focus设置,最终解决了问题。

3579

被折叠的 条评论
为什么被折叠?



