描述
最近遇到一个问题,在使用RecyclerView加载列表的时候,只显示出了第一个item,打断点调试,发现程序只走了一次onBindViewHolder()这个方法。可是在程序中的其他地方使用RecyclerView的时候,并没有出现类似的情况。
解决
最后经过多方查询,发现在onCreateViewHolder()方法中,inflate方法后面加参数的时候,三个参数里的第二个原本是填的onCreateViewHolder方法传进来的viewGroup,后来将其改为null,问题就解决了,神奇吧!虽然现在我还没有彻底理解出现这种问题的原因具体是什么(毕竟在其他地方也是这么写的,就没有出现问题),但毕竟是把问题解决了。
仅执行一次inflate的写法:
正常执行inflate的写法: