RecyclerView.adapter的回调方法部分不执行

现象:

我在Fragment使用RecyclerView,给他设置了RecyclerView.Adapter, adapter里面的方法我看了下:执行的方法有构造方法,getItemCount值不为0,其他的方法比如onCreateViewHolder,onBindViewHolder,ViewHolder的构造方法都不执行

原因:

我在主页面布局文件里面使用了RecyclerView,且高度设置为了match_parent,在RecyclerView的后面设置了Fragment,Fragment设置RecyclerView,其实也就是在一个页面中使用了多个RecyclerView,这个是不建议的

解决方案:

1)将前一个定义的RecyclerView的高度设置为wrap_content,这样后一个RecyclerView就可以正常显示了;

2)使用itemType代替,一个布局文件只使用一个RecyclerView

备注:

RecyclerView使用时,显示异常的原因很多:

比如getItemCount为0,LinerLayoutManager的显示方式没有设置,布局文件设置异常,详情参考:

https://stackoverflow.com/questions/27809524/recyclerview-not-call-oncreateviewholder

 

你可能感兴趣的:(报错查找)