楷楷大人 2020-02-12 13:48 采纳率: 50%
浏览 943
已采纳

android RecyclerView适配器 onBindViewHolder出错!

import android.media.Image;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;

import java.util.List;

public class RecyclerViewAdapter extends RecyclerView.Adapter {
public List mlist;
static class ViewHolder extends RecyclerView.ViewHolder{
ImageView imageView;
TextView textView;
public ViewHolder(@NonNull View itemView) {
super(itemView);
imageView=(ImageView)itemView.findViewById(R.id.image);
textView=(TextView)itemView.findViewById(R.id.title);
}
}
public RecyclerViewAdapter(List list) {
this.mlist =list;
}

@NonNull
@Override
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
    View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.main_item,parent,false);
    ViewHolder holder=new ViewHolder(view);
    return holder;
}

@Override
public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
    ItemBean itemBean = mlist.get(position);
    holder.imageview.setImageResource(itemBean.getImage());
    holder.textView.setText(itemBean.getText());
}

@Override
public int getItemCount() {
    return mlist.size();
}

}
图片说明

  • 写回答

1条回答 默认 最新

  • 代码的灵魂是bug! 2020-02-12 15:42
    关注

    缺少代码。ViewHolder holder = (ViewHolder)holder;,必须把onBindViewHolder参数中的holder转换成自己定义的才行

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音
  • ¥30 Pytorch深度学习服务器跑不通问题解决?
  • ¥15 部分客户订单定位有误的问题
  • ¥15 如何在maya程序中利用python编写领子和褶裥的模型的方法
  • ¥15 Bug traq 数据包 大概什么价
  • ¥15 在anaconda上pytorch和paddle paddle下载报错
  • ¥25 自动填写QQ腾讯文档收集表