写gridview的listadapter的时候用的是继承baseAdapter,但是一直弹出
java.lang.ClassCastException: android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.AbsListView$LayoutParams
的错误,弄了好久网上找了好多资料都没用,
public class GridAdapter extends BaseAdapter {
List<String> itemList;
Context context;
public GridAdapter(List<String> itemList, Context context) {
super();
this.itemList = itemList;
this.context = context;
}
@Override
public int getCount() {
return itemList.size();
}
@Override
public Object getItem(int position) {
return itemList.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
if(convertView==null){
holder = new ViewHolder();
LayoutInflater inflater = LayoutInflater.from(context);
convertView = inflater.inflate(R.layout.grid_item, null, false);
holder.itemTV = (TextView) convertView.findViewById(R.id.grid_item_tv);
convertView.setTag(holder);
}else{
holder = (ViewHolder) convertView.getTag();
}
holder.itemTV.setText(itemList.get(position));
return convertView;
}
class ViewHolder{
public TextView itemTV;
}
}
原来红色的那个地方竟然写成了holder.itemTV,这就是不细心的代价啊!
切记切记!