看完这里我尝试实现自己的高效适配器,
我的 ViewHolder 类几乎相同:
static class ViewHolder {
ImageButton button;
TextView txtView;
}
getView 方法如下所示:
private void getView(...) {
if(convertView == null) {
convertView = LayoutInflater.from(
parent.getContext()).inflate(R.layout.linear_container,
parent, false);
holder = new ViewHolder();
convertView.setTag(holder);
} else {
// erro line
holder = (ViewHolder) convertView.getTag();
}
LinearLayout llCustomImgViewContainer = (LinearLayout) convertView
.findViewById(R.id.llContainer);
llCustomImgViewContainer.setTag(viewPosition);
return converView;
}
但是一旦新视图开始绘制,它就会给我错误
D / AndroidRuntime(748):关闭VM W / dalvikvm(748):threadid = 1:线程退出未捕获的异常(组= 0x412a4300)E / AndroidRuntime(748):致命异常:主要E / AndroidRuntime(748): java .lang.ClassCastException:java.lang.Integer 无法转换为 com.droid.test.widget.customListView$CustomBaseAdapter$ViewHolder
有人知道这里有什么问题吗?