关于使用Fragment的布局里面的RecyclerView没有

2020-06-17  本文已影响0人  伪装的狼

在写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);

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

上一篇下一篇

猜你喜欢

热点阅读