关于使用Fragment的布局里面的RecyclerView没有数据显示以及onCreateViewHolder()、 onBindViewHolder()没有被调用的问题解决方法

在写RecyclerView传入数据的时候一直没有数据显示,卡了很久,根据网上的几种常用方法如下:
1、RecyclerView没有加入这一句设置RecyclerView的布局管理:
LinearLayoutManager layoutManager = new LinearLayoutManager(context;
recyclerView.setLayoutManager(layoutManager);
//但是我早就加了

2、有的说这一句recyclerView.setAdapter(adapter); 设置适配器要放到最后,依然不行。
3、有的说没有重写getItemCount()方法,该方法默认返回0,所以不行,但是我早就重写了。
4、我想到有可能是异步加载的问题,但是我是直接在onCreate里面获取数据的,然后获取数据之后RecyclerView加载,问题依然得不到解决。
5、另外我觉得有可能是RecyclerView获取不到id的问题,但是直接打印是可以打印出来的,调用也是没有问题得,并没有报空指针。

最后查看日志:
E/RecyclerView: No adapter attached; skipping layout,这说明适配器都没有数据,并且调试发现:RecyclerView的onCreateViewHolder()、
onBindViewHolder()和getItemCount()方法都没有被调用,奇了怪了。

最后经过各种测试找到了问题所在,
原来数据的初始化需要在Fragment的onCreateView里面加载初始化,
在onCreateView里面加入以下代码即可,
recyclerView.setLayoutManager(layoutManager);
recyclerView.setAdapter(adapter);

这个只是一个小白解决问题的思路,具体还需要看问题所在。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。