Android 使用BaseAdapter 插入不同类型数据

时间:2022-09-25 19:44:31

  在使用过程有时要在listview中插入不同类型的数据,比如说position=0的位置插入,广告,其它列表显示数据的情况。

  一定要重写两种方法

  

@Override
public int getItemViewType(int position) {
Object object = bmobIMMessageList.get(position);
if (object instanceof Integer) {
return TYPE_BANNER;
} else {
return TYPE_DATA;
}
} @Override
public int getViewTypeCount() {
return 2;
}

否则列表在复用convertview时会出错,无法精准复用,造成控件空指针异常。

Google了一下:

http://*.com/questions/5300962/getviewtypecount-and-getitemviewtype-methods-of-arrayadapter