RecyclerView只有一行数据的解决方案

作为一个刚开始学习Android的菜鸟,今天学习做一个简单的聊天界面 刚开始使用了RecyclerView 就碰到了只显示一行数据的问题。

RecyclerView只有一行数据的解决方案_第1张图片

上网查阅一番后发现几个解决方案。

1.初始化布局的时候把第二个参数设置为空,或者只设置两个参数,第一个为布局ID,第二个参数为空。

上一下我的初始化布局代码

public ViewHolder onCreateViewHolder(ViewGroup parent , int viewType){
    View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.message_item,parent,false);
    return new ViewHolder(view);
}
改成了

public ViewHolder onCreateViewHolder(ViewGroup parent , int viewType){
    View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.message_item,null,false);
    return new ViewHolder(view);
}
但是结果变成了

RecyclerView只有一行数据的解决方案_第2张图片

我设置好放在右边的布局显示在了左边,很明显没有传入第二个parent参数导致了初始化布局的错误

2.看到有人说是item布局height属性问题,设置成了match_parent,我猜测可能是一行数据占据了整个屏幕,运行程序往下拉,果然其他数据在下面

RecyclerView只有一行数据的解决方案_第3张图片

于是果断修改item布局

android:layout_height="wrap_content"

RecyclerView只有一行数据的解决方案_第4张图片

程序显示正常。


你可能感兴趣的:(Android)