Fragment切换或回退时空白,RecyclerView提示 No adapter attached; skipping layout

当Fragment包含RecyclerView时,首次加载Fragment页面可以正常加载RecyclerView。但是当切换到别的Fragment再回退时,或者二次加载Fragment时,加载不出页面,报错:No adapter attached; skipping layout

解决:只要在onCreateView里重新设置一遍setLayoutManager、setAdapter即可

注:Fragment回退或重新加载时所有的View及与View绑定的数据、适配器Adapter等都需要重新设置,否则相关数据显示都是空的,除非复用上一次View!特别注意Adapter不要进行非空判断然后使用Adapter.notifyDataSetChanged刷新,因为View已经重新创建并可能已经回收,但Adapter还是原来的!

即在不复用View的情况下:

//if (mAdapter == null) {
    mAdapter = new MyAdapter(mDataList);
    mRecyclerView.setLayoutManager(new LinearLayoutManager(context));
    mRecyclerView.setAdapter(mAdapter);
//} else {
    //mAdapter.notifyDataSetChanged();
//}

版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/03/11/fragment-switching-or-fallback-white-recyclerview-prompts-no-adapter-attached-skipping-layout/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
打赏
海报
Fragment切换或回退时空白,RecyclerView提示 No adapter attached; skipping layout
当Fragment包含RecyclerView时,首次加载Fragment页面可以正常加载RecyclerView。但是当切换到别的Fragment再回退时,或者二次加载Fragment时,加载不出页面,……
<<上一篇
下一篇>>
文章目录
关闭
目 录