RecyclerView有数据但没有显示有几种情况,有以下几点:
1.在recycleview的初始化代码中,是否设置LayoutManager(recyclerView.setLayoutManager)。
2.在获取数据后,没有调用notifyDataSetChanged()方法刷新数据。
3.Adapter中的onCreateViewHolder()方法下的LayoutInflater.from(context).inflate(R.layout.item_first_page, parent, false)
加载layout语句的layout文件由于复制或者其他原因不是实际要使用的布局文件,数据无法通过ViewHolder映射到布局文件,但是这个问题并不会报错。
4.布局文件中,RecyclerView对应的宽度(或高度)使用了match_parent,但是对应item layout中的View Top、Botom这些属性设置不合理导致内容显示不全或者不显示。
5.RecyclerView对应的宽度(或高度)使用了match_parent,而且对应item layout中的View Top、Botom这些属性设置没问题,但是父布局的宽高设置有问题,导致RecyclerView的宽度或者高度只有0dp(match_parent取0dp但是根据弹性约束自适应)。
(通常出现在ConstraintLayout嵌套ConstraintLayout时,哪怕子ConstraintLayout的父布局不是ConstraintLayout,但是根布局是ConstraintLayout也会可能出现这个问题)
补充:取match_parent时,Android Studio预览的效果就是app实际显示的效果,不同于wrap_content。
6.RecyclerView对应的宽度(或高度)使用了wrap_content,
RecyclerView最后一列内容显示不全
layout_height使用了wrap_content,应该改成match_parent。
7.Android RecyclerView 相互嵌套内层RecyclerView显示不全的问题,解决方案请看Android RecyclerView 相互嵌套内层RecyclerView显示不全的问题_recyclerview嵌套recyclerview显示不全_ErwinNakajima的博客-CSDN博客