package com.streamlet.appui.base; import android.content.Context; import android.view.LayoutInflater; import android.widget.BaseAdapter; import java.util.ArrayList; import java.util.List; public abstract class BaseAdapter2<E> extends BaseAdapter { public LayoutInflater inflater; public Context context; private List<E> mlist=new ArrayList<E>(); public BaseAdapter2(Context context){ this.context=context; inflater= (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); } public void addAdapterData(List<E> mlist){ if(mlist!=null){ this.mlist.addAll(mlist); } notifyDataSetChanged(); } /**数据从指定位置插入*/ public void addAdapterData(int index,List<E> mlist){ if(mlist!=null){ this.mlist.addAll(index,mlist); } notifyDataSetChanged(); } public void addAdapterData(int index, E mObject) { if (mlist != null) { this.mlist.add(index, mObject); } notifyDataSetChanged(); } public void resetListAdapterData(List<?extends E> mlist){ this.mlist.clear(); this.mlist.addAll(mlist); notifyDataSetChanged(); } /**与Activity中的list同步*/ public void setMlist(List<E> mlist){ this.mlist=mlist; } public void addAdapterData(E e){ if(mlist!=null){ mlist.add(e); } notifyDataSetChanged(); } public List<E> getMlist(){ return mlist; } public void removeAdapterData(E e){ if(mlist!=null&&mlist.contains(e)){ mlist.remove(e); } notifyDataSetChanged(); } public void removeAdapterData(int position){ if(mlist!=null&&mlist.size()>=position){ mlist.remove(position); } notifyDataSetChanged(); } public void clearAdapter(){ if(mlist!=null){ mlist.clear(); } notifyDataSetChanged(); } public int getAdapterSize(){ if(mlist!=null){ return mlist.size(); }else{ return 0; } } public List<E> getAdapterData(){ return mlist; } @Override public int getCount() { // TODO Auto-generated method stub return mlist.size(); } @Override public E getItem(int position) { // TODO Auto-generated method stub return mlist.get(position); } @Override public long getItemId(int position) { // TODO Auto-generated method stub return position; } }