ListView是一个常用的控件,用到ListView就必须用到BaseAdapter,下面对BaseAdapter进行简单的封装:
public abstract class MyBaseAdapter<T> extends BaseAdapter {
private List<T> dates;
private Context context;
public MyBaseAdapter(List<T> dates,Context context){
this.dates=dates;
this.context=context;
}
@Override
public int getCount() {
return dates.size();
}
@Override
public Object getItem(int position) {
return dates.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
return getItemView(position,convertView,parent,dates,context);
}
public abstract View getItemView(int position,View convertView,ViewGroup parent,List<T> dates,Context context);
//清除数据
public void clear(){
dates.clear();
notifyDataSetChanged();
}
//添加数据
public void addall(List<T> dd){
dates.addAll(dd);
notifyDataSetChanged();
}
}