listview加入多个布局报错java.lang.ClassCastException

it2025-01-31  13

ClassCastException,从字面上看,是类型转换错误,通常是进行强制类型转换时候出的错误。下面对产生ClassCastException异常的原因进行分析,然后给出这种异常的解决方法。 而我报这个错的原因是我在Listview里面加入了两个不同布局,下面是解决办法:

@Override public int getItemViewType(int position) { if (position == 0) { return TYPE_banner; } else { return TYPE_content; } } @Override public int getViewTypeCount() { return 2;//有多少个不同布局写几个 }

然后我们获取位置是直接在getView里面这样写的:

@Override public View getView(int position, View convertView, ViewGroup parent) { ... int type = getItemViewType(position); switch (type) { case TYPE_banner: 操作... break; } return view; }
最新回复(0)