if (convertView == null) { holder = new ViewHolder(); Log.e("convertView", "null"); convertView = LayoutInflater.from(context).inflate(R.layout.discovery_horizontallistview_item_item, parent, false); holder.imageView = convertView.findViewById(R.id.horizontallistviewitem); convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); }holder.imageView.setImageDrawable(ContextCompat.getDrawable(context, list.get(position)));
运行代码时提示holder.imageView.setImageDrawable(ContextCompat.getDrawable(context, list.get(position)));这行代码空指针异常,通过调试第一次执行没有错误,第二次时出现holder.imageView空指针异常,说明第二个item没有获取到holder.imageView对象,后来发现我没有设置convertView.setTag(holder); 所以convertView.getTag()没有获取到对象。
listview下item获取控件空指针异常
最新推荐文章于 2019-10-19 11:04:29 发布
本文介绍了一种常见的RecyclerView中ViewHolder模式下ImageView出现空指针异常的问题,并详细解释了异常产生的原因及如何通过正确使用convertView.setTag(holder)来避免此类问题。

4万+

被折叠的 条评论
为什么被折叠?



