理论教育 常用数据适配器:简介及应用场景

常用数据适配器:简介及应用场景

时间:2023-06-12 理论教育 版权反馈
【摘要】:为了实现数据适配,Android系统提供了一系列的适配器对ListView进行数据适配。接下来介绍几种常用的Adapter。表7-2BaseAdapter的几个抽象方法表7-2介绍的4个抽象方法分别用于设置Item的总数、获取Item对象、获取Item id、得到Item视图。开发者在适配数据到ListView时,需要创建一个类来继承BaseAdapter并重写这4个抽象方法。ArrayAdapterArrayAdapter也是BaseAdapter的子类。与SimpleAdapter相同,ArrayAdapter也不是抽象类,ArrayAdapter通常用于适配TextView控件,例如Android中Setting。

常用数据适配器:简介及应用场景

为了实现数据适配,Android系统提供了一系列的适配器(Adapter)对ListView进行数据适配。适配器就像显示器,把复杂的数据按人们易接受的方式来展示。接下来介绍几种常用的Adapter。

(1)BaseAdapter

BaseAdapter顾名思义即基本的适配器。它实际上就是一个抽象类,该类拥有4个抽象方法。在Android开发中,可根据这几个抽象方法来对ListView进行数据适配。

BaseAdapter的4个抽象方法的功能如表7-2所示。

表7-2 BaseAdapter的几个抽象方法

表7-2介绍的4个抽象方法分别用于设置Item的总数、获取Item对象、获取Item id、得到Item视图。开发者在适配数据到ListView时,需要创建一个类来继承BaseAdapter并重写这4个抽象方法。

(2)SimpleAdapter

SimpleAdapter继承了BaseAdapter,实现了BaseAdapter的4个抽象方法,分别是getCount()、getItem()、getItemId()、getView()方法。因此,开发者需要创建SimpleAdapter的构造方法如下:

上述构造方法有多个参数,下面针对这些参数进行介绍:

·Context context:Context对象,getView()方法中需要用到Context来将布局文件转换为View对象。

·List<?Extends Map<String,?>>data:数据集合,SimpleAdapter已经在getCount()方法中实现将数据集合的大小返回。(www.daowen.com)

·int resource:Item布局的资源Id。

·String[]from:Map集合里面的Key。

·int[]to:Item布局相应的空间Id。

需要注意的是,SimpleAdapter只能适配Checkable、TextView、ImageView,其中Checkable是一个接口,CheckBox控件实现了该接口。TextView适用于显示文本的控件,ImageView是用来显示图片的控件。如果int[]to所代表的控件不是这三种类型,则系统会报IllegalStateException。

(3)ArrayAdapter

ArrayAdapter也是BaseAdapter的子类。与SimpleAdapter相同,ArrayAdapter也不是抽象类,ArrayAdapter通常用于适配TextView控件,例如Android中Setting(设置菜单)。

ArrayAdapter的构造方法如下所示:

ArrayAdapter构造方法中同样有多个参数,下面针对这些参数进行介绍:

·Context context:Context对象。

·int resource:Item布局的资源Id。

·int textViewResourceId:Item布局相应的控件TextView的Id。

·T[]objects:需要适配的数据数组

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈