Android Adapter及其子类、接口详解
2015-07-14 17:14
621 查看
本文转自:http://hubingforever.blog.163.com/blog/static/17104057920104316549759/ 感觉介绍的还是挺详细的。每个接口都有连接,连接也是作者写的。
Android为我们提供了android.widget.Adapter和android.widget.ExpandableListAdapter两大类数据适配器接口。
android.widget.ExpandableListAdapter接口主要和android.widget.ExpandableListView配合使用
而android.widget.Adapter接口主要和android.widget.AdapterView中android.widget.ExpandableListView之除外的其他类配合使用。
以下是Adapter接口及子接口和实现类的关系图
图1:
public interface Adapter
Adapter是绑定 Data和AdapterView 的适配器
实现Adapter的直接接口有:ListAdapter和 SpinnerAdapter
更多可参考《Adapter接口》
一、ListAdapter
ListAdapter是绑定 Data和Listview的适配器。但是,它是接口,需要实现。
实现了ListAdapter的接口有:
WrapperListAdapter
实现ListAdapter的类:
BaseAdapter
ArrayAdapter<T>
CursorAdapter
ResourceCursorAdapter
SimpleCursorAdapter
SimpleAdapter
HeaderViewListAdapter (extends Object)(implements WrapperListAdapter)
常见的有:arrayAdapter,SimpleAdapter ,CursorAdapter。
ListAdapter经常和ListView一起使用,具体可参考《ListActivity 和ListView 》
二、SpinnerAdapter
SpinnerAdapter是绑定 Data和Spinner的适配器.
它只申明了一个方法:
abstract View
getDropDownView(int position, View convertView, ViewGroup parent) Get a View that displays in the drop down popup the data at the specified position in the data set.
实现了SpinnerAdapter的类:
BaseAdapter
ArrayAdapter
CursorAdapter
ResourceCursorAdapter
SimpleCursorAdapter
SimpleAdapter
实现了SpinnerAdapter的接口:
无
更多可参考《SpinnerAdapter》
三、BaseAdapte
关于BaseAdapte请参考《BaseAdapter》
四、ArrayAdapter
ArrayAdapter(数组适配器)的作用就是一个数组和listview之间的桥梁,它可以将数组里边定义的数据一一对应的显示在Listview里边。
ListView的每个 TextView里边显示的内容就是数组里边的对象调用toString()方法后生成的字符串。
更多请参考《ArrayAdapter》
五、SimpleAdapter
SimpleAdapter是ArrayList和 ListView的桥梁。这个ArrayList里边的每一项都是一个Map<String,?>类型。
ArrayList当中的每一项 Map对象都和ListView里边的每一项进行数据绑定一一对应。
更多请参考《SimpleAdapter》
六、CursorAdapter
CursorAdapter是个虚类,继承于BaseAdapter。
它有两个虚方法newView和bindView
直接子类只有ResourceCursorAdapter
间接子类只有SimpleCursorAdapter(它继承于ResourceCursorAdapter)。
更多请参考《CursorAdapter》
七、ResourceCursorAdapter
ResourceCursorAdapter是个虚类,它继承于CursorAdapter。
它实现了newView,但仍然没有实现bindView
直接子类只有SimpleCursorAdapter,无间接子类。
更多请参考《ResourceCursorAdapter》
八、SimpleCursorAdapter
SimpleCursorAdapter继承于CursorAdapter。它不是虚类,已经实现了bindView。
更多请参考《SimpleCursorAdapter》
九、WrapperListAdapter
WrapperListAdapter 扩展了ListAdapter接口
实现了WrapperListAdapter接口的类只有:HeaderViewListAdapter
WrapperListAdapter只声明了一个方法:
public abstract ListAdapter getWrappedAdapter ()
十、HeaderViewListAdapter
HeaderViewListAdapter实现了WrapperListAdapter接口,并实现了getWrappedAdapter方法。
更多请参考《HeaderViewListAdapter》
Android为我们提供了android.widget.Adapter和android.widget.ExpandableListAdapter两大类数据适配器接口。
android.widget.ExpandableListAdapter接口主要和android.widget.ExpandableListView配合使用
而android.widget.Adapter接口主要和android.widget.AdapterView中android.widget.ExpandableListView之除外的其他类配合使用。
以下是Adapter接口及子接口和实现类的关系图
图1:
public interface Adapter
Adapter是绑定 Data和AdapterView 的适配器
实现Adapter的直接接口有:ListAdapter和 SpinnerAdapter
更多可参考《Adapter接口》
一、ListAdapter
ListAdapter是绑定 Data和Listview的适配器。但是,它是接口,需要实现。
实现了ListAdapter的接口有:
WrapperListAdapter
实现ListAdapter的类:
BaseAdapter
ArrayAdapter<T>
CursorAdapter
ResourceCursorAdapter
SimpleCursorAdapter
SimpleAdapter
HeaderViewListAdapter (extends Object)(implements WrapperListAdapter)
常见的有:arrayAdapter,SimpleAdapter ,CursorAdapter。
ListAdapter经常和ListView一起使用,具体可参考《ListActivity 和ListView 》
二、SpinnerAdapter
SpinnerAdapter是绑定 Data和Spinner的适配器.
它只申明了一个方法:
abstract View
getDropDownView(int position, View convertView, ViewGroup parent) Get a View that displays in the drop down popup the data at the specified position in the data set.
实现了SpinnerAdapter的类:
BaseAdapter
ArrayAdapter
CursorAdapter
ResourceCursorAdapter
SimpleCursorAdapter
SimpleAdapter
实现了SpinnerAdapter的接口:
无
更多可参考《SpinnerAdapter》
三、BaseAdapte
关于BaseAdapte请参考《BaseAdapter》
四、ArrayAdapter
ArrayAdapter(数组适配器)的作用就是一个数组和listview之间的桥梁,它可以将数组里边定义的数据一一对应的显示在Listview里边。
ListView的每个 TextView里边显示的内容就是数组里边的对象调用toString()方法后生成的字符串。
更多请参考《ArrayAdapter》
五、SimpleAdapter
SimpleAdapter是ArrayList和 ListView的桥梁。这个ArrayList里边的每一项都是一个Map<String,?>类型。
ArrayList当中的每一项 Map对象都和ListView里边的每一项进行数据绑定一一对应。
更多请参考《SimpleAdapter》
六、CursorAdapter
CursorAdapter是个虚类,继承于BaseAdapter。
它有两个虚方法newView和bindView
直接子类只有ResourceCursorAdapter
间接子类只有SimpleCursorAdapter(它继承于ResourceCursorAdapter)。
更多请参考《CursorAdapter》
七、ResourceCursorAdapter
ResourceCursorAdapter是个虚类,它继承于CursorAdapter。
它实现了newView,但仍然没有实现bindView
直接子类只有SimpleCursorAdapter,无间接子类。
更多请参考《ResourceCursorAdapter》
八、SimpleCursorAdapter
SimpleCursorAdapter继承于CursorAdapter。它不是虚类,已经实现了bindView。
更多请参考《SimpleCursorAdapter》
九、WrapperListAdapter
WrapperListAdapter 扩展了ListAdapter接口
实现了WrapperListAdapter接口的类只有:HeaderViewListAdapter
WrapperListAdapter只声明了一个方法:
public abstract ListAdapter getWrappedAdapter ()
十、HeaderViewListAdapter
HeaderViewListAdapter实现了WrapperListAdapter接口,并实现了getWrappedAdapter方法。
更多请参考《HeaderViewListAdapter》
相关文章推荐
- Android中LayoutParams的用法
- Android res文件夹下资源定义及使用!
- Android中LayoutInflater的使用,inflate
- Android模拟器使用SD卡
- 在Windows下安装与使用Android NDKr5
- Android在程序中播放本地视频
- Android中Looper简介
- Android阻塞对话框PopupWindow
- Android中Uri的使用
- Android支持的音视频编码解码格式
- Android&nbsp;视频编码学习!
- Android访问权限
- Android平台View的按键事件KeyDown用法
- Android系统一些自带功能调用
- Android中动态界面布局
- Android之旅---广播(BroadCast)
- Android中Socket大文件断点上传
- Android开发数据相关
- Android特效 五种Toast详解
- 仿写android-serialport-api