Adapter及其一些例子

来源:互联网 发布:用java写出九九乘法表 编辑:程序博客网 时间:2024/05/16 06:18

为了更好的理解Adapter我们这里先看一下接口的关系图


我们主要讲解就是BaseAdapter因为它同时继承了ListAdapter与spinnerAdapter,而且绝大部分的Adapter都继承它。

Adapter的实现类如下:

ArrayAdapter:简单.易用的Adapter,通常用于将数组或List集合的多少值包装成列表。

SimpleAdapter:并不简单.功能强大的Adapter,可用于将list集合的多少对象把装成多个列表项。

SimpleCursorAdapter:与SimpleAdapter基本相似,只适用于包装Cursor提供的数据。

BaseAdapter:通常用于被扩展。扩展BaseAdapter可以对各个表项进行最大限度的定制。


下面介绍一下ArrayAdapter来实现的ListView。

这里面的R.layout.array_item的布局如下,另外R.layout。checked_item也类似里面是一个CheckTextview就不做演示。

最后来一张结果图

接下来介绍一下SimpleAdapter创建ListView,上面的ArrayAdapter功能有限,它的列表只能是TextView,而SimpleAdapter 的功能就比较强大了

上面就是item

结果图:

这里面的关键在于创建SimpleAdapter,它需要5个参数,其中后面四个参数很重要,这里我分别介绍一下:

第二个参数:这个参数是一个List<?extendsMap<string,?>>类型的集合对象,这个集合中每个Map<String,?>对象生成一个列表项。

第三个参数:这个参数指定一个界面布局的ID。比如此处指定了R.layout.simple_iteam,这意味着使用这个布局作为列表项组件。

第四项参数:这个参数是一个String【】类型的参数,这个参数提取Map<String,?>对象中哪些key对应的value来生成列表项。

第五个参数:这个参数是一个int【】类型的参数,这个参数决定填充哪些组件。


其实仔细发现这两个是差不多的  只是插入的类型一个单一化,另一个多元化。

SimpleCursonAdapter与上面的SimpleAdapter基本相同这里就不做介绍。最后我们介绍一下

BaseAdapter

布局的话只有一个ListView故在此不做列出代码。

这里的话基本已介绍完成,希望对大家有所帮助

0 0
原创粉丝点击