说在前面:
在做联系人列表和消息列表之类的时候经常用到listview和adapter,相信代码都会写,往上的例子也多的数不胜数,我搜了一下介绍listview和adapter之间关系的博文并不多,说的详细的更少,今天就把我对他们之间关系的理解说一说,说不明白就直接上图;再加上一个例子来说明怎么用。
1.listview和adapter之间的关系:
我喜欢安卓字面意思理解,listview就是将单个view进行list化(也可以是group化),便于显示和管理;adapter适配器:适配器就是一个接口转换器,它可以是一个独立的硬件接口设备,允许硬件或电子接口与其它硬件或电子接口相连,也可以是信息接口(来自百度百科),看来是把一种东西转换为另一种合适的东西输出以便其他用途。
那么adapter是将什么转换为什么呢?
adapter结合view模板,将数据转换为适合listview的格式,让listview显示。
概念说起来真模糊,文字读起来真枯燥,都是老司机,一言不合就上图。来看概念图:
是不是看着概念图还是不爽,枯燥,看不懂?猜到了,早就准备了实例图:
基本概念和关系就是这样子的,其中viewholder的作用:顾名思义,hold住view模板,重复利用,不用再每次使用的时候重新加载了。hold住view后只需要将数据往里面写就好了。