安卓学习:适配器之BaseAdapter

先介绍慕课上的一个介绍BaseAdapter的视频:http://www.imooc.com/learn/365

之前看过一遍,现在看一遍,有了更加清晰的理解。


一个Adapter是AdapterView视图与数据之间的桥梁,Adapter提供对数据的访问,也负责为每一项数据产生一个对应的View。ListView,GridView都需要用到BaseAdapter。

安卓学习:适配器之BaseAdapter_第1张图片

   常用的子类


BaseAdapter的几个方法

1.getCount():返回数组的长度

2.getItem(int position);返回item的position

3.getItemId(int position):返回item所在position的ID

4.getView (int position,View convertView,ViewGroup parent);

==》convertView:当前的View,使用前应先判断是否为null,为null时要创建新的View。


BaseAdapter一般与ViewHolder结合使用以优化性能;思路如下:

1.创建Bean对象,用来封装数据

先写一个item的xml文件,将一条数据所需要的控件写好,如图片,标题,内容...

2.创建一个自定义的adapter类继承BaseAdapter,在构造方法中初始化用于映射的数据List<Object>

3.创建ViewHolder类,创建布局映射关系

在viewHolder类中定义item文件里所拥有的控件

4.判断convertView,为null则创建,并设置tag,否则通过tag来取出viewHolder

5.给viewHolder的控件设置数据



你可能感兴趣的:(安卓学习:适配器之BaseAdapter)