ArrayAdapter和BaseAdapter的区别

那么对于ArrayAdapter到底比BaseAdapter先进到哪里呢?从名称来看Array我们可以联系到数组的很多操作,没错Android123给大家列出本类所有成员方法实用的处理方式,

比如
void  add(T object)  //添加一个对象到本ArrayAdapter
void  clear()  //清除所有元素
static ArrayAdapter<CharSequence>  createFromResource(Context context, int textArrayResId, int textViewResId)   //从layout资源构造arrayadapter Context  getContext()  //获取实例
int  getCount() 
View  getDropDownView(int position, View convertView, ViewGroup parent)  //获取drop down的popup风格选择条目的内容,参数1是位置,参数2可以通过强制转换直接获取本条的内容
Filter  getFilter() //使用正则过滤数据
T  getItem(int position)  //获取单条内容
long  getItemId(int position) 
int  getPosition(T item) //通过内容获取是某条
View  getView(int position, View convertView, ViewGroup parent) 
void  insert(T object, int index)  //插入新条目到数组的index位置
void  notifyDataSetChanged()  //通知数据变化了,告诉绑定Adapter的widget来更新UI
void  remove(T object)  //移出一条从数组,这里并没有指定位置
void  setDropDownViewResource(int resource)  //设置dropdown的layout风格
Sets the layout resource to create the drop down views.
void  setNotifyOnChange(boolean notifyOnChange)  //本条是arrayadapter最强大的功能,android123强烈推荐处理大数据时使用该方法,可以降低ui的处理量,刷新ui可以更快速,主要可以停止对
(add(T), insert(T, int), remove(T), clear() 的操作,当然可以通过 notifyDataSetChanged(). 或 setNotifyOnChange(true) 通知变化
void  sort(Comparator<? super T> comparator)  //这里是android开发网经常用的排序,使用arrayadapter可以直接排序,十分方便

所以最终android123推荐大家什么情况使用arrayadapter,什么时候使用baseadapter。当数量较多,比如超过100条或频繁动态增减时使用arrayadapter可以方便控制ui,通过setNotifyOnChanage方法,如果比较简单仅仅呈现直接从baseadapter更节省资源

你可能感兴趣的:(UI,android,object,layout,dropdown,insert)