博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
listview适配器与加载过程详解
阅读量:7259 次
发布时间:2019-06-29

本文共 1185 字,大约阅读时间需要 3 分钟。

android开发中Listview是一个很重要的组件,它以列表的形式根据数据的长自适应展示具体内容。

Listview由以下三个元素组成:

Ø  View:用来展示列表,通常是一个xml所指定的。

Ø  适配器:把不同的数据映射到view上,不同的数据对应不同的适配器,如ArrayDdapter,CursorAdapter,SimpleAdapter等,他们能偶将数组,指针指向的数据,Map等数据映射到View上。

通过listviiewsetadapter方法可以设置其适配器

 public void setAdapter ( adapter)

setAdapter方法的参数是ListAdapter,适配器可以为以下八种类型:

<T>, ,   

ArrayAdapter最为简单,只能展示一行字。

SimpleAdapter有最好的扩充性,可以自定义出各种效果。

SimpleCursorAdapter可以认为是SimpleAdapter对数据库的简单结合,可以方便的把数据库的内容以类表的形式展示出来。

以上三种适配器都继承自BaseAdapter,继承BaseAdapter之后,需要重写以下四个方法:getCount,getItem,getItemId,getView

Ø  数据:具体的将被映射的数据和资源,如字符串,图片,基本组件等,通过适配器,这些数据将会被显示到ListView.所有的数据和资源要显示到ListView上都通过适配器来完成。

ListView绘制的过程:

首先,系统在绘制ListView之前,将会先调用getCount方法来获取Item的个数。之后每绘制一个 Item就会调用一次getView方法,在此方法内就可以引用事先定义好的xml来确定显示的效果并返回一个View对象作为一个Item显示出来。也正是在这个过程中完成了适配器的主要转换功能,把数据和资源以开发者想要的效果显示出来。也正是getView的重复调用,使得ListView的使用更 为简单和灵活。这两个方法是自定ListView显示效果中最为重要的,同时只要重写好了就两个方法,ListView就能完全按开发者的要求显示。而 getItemgetItemId方法将会在调用ListView的响应方法的时候被调用到。所以要保证ListView的各个方法有效的话,这两个方 法也得重写。比如:没有完成getItemId方法的功能实现的话,当调用ListViewgetItemIdAtPosition方法时将会得不到想 要的结果,因为该方法就是调用了对应的适配器的getItemId方法。

本文转自HDDevTeam 51CTO博客,原文链接:http://blog.51cto.com/hddev/645467,如需转载请自行联系原作者

你可能感兴趣的文章
使用SignalR 2 注意事项
查看>>
多进程 (一) — 像线程一样管理进程
查看>>
node+vue报错合辑
查看>>
Date——js 获取当前日期到之后一个月30天的日期区间
查看>>
RT-SA-2019-003 Cisco RV320 Unauthenticated Configuration Export
查看>>
Java线程练习
查看>>
Algs4-1.5.22Erods-renyi模型的倍率实验
查看>>
计算机硬件的组成、python的开发层面及语法介绍
查看>>
python面试知识点
查看>>
栅格布局
查看>>
Zimber 8.8.12卸载后重新安装报错解决办法
查看>>
Git 自救指南
查看>>
spring boot配置项目访问路径,配置拦截器,配置静态虚拟路径
查看>>
linux运维笔记
查看>>
Lake Counting (DFS)
查看>>
信息安全影响因素
查看>>
hadoop安装
查看>>
delegate事件委托
查看>>
Linux Process VS Thread VS LWP
查看>>
杭电多校第二场 1005 hack it
查看>>