Android 中 ListView 与 Adapter 的关系

1  ListView 与 Adapter 的关系


 

ListView 是 Android 开发过程中较为常见也是非常重要的组件之一,它可以将数据以列表的形式展现出来。

 

我们的手机应用常用的软件都有 ListView 如手机联系人列表,来电号码列表等。

 

一个ListView主要是由以下三个元素组成:

(1)View:即是ListView 的定义,一般在 XML 文件中定义。

(2)Adapter:适配器,用于将不同的数据映射到 View 上。不同的数据对应不同的适配器,如:

         BaseAdapter、ArrayAdapter、CursorAdapter、SimpleAdapter 等。他们能够将数组、指针指向数       据、Map等数据映射到View 上。

(3)数据:具体的映射数据和资源,可以是字符串,图片等。通过适配器,这些数据将会被实现到 ListView

上。

 

 

2 ListView 的绘制过程


                           

 

public abstract class BaseAdapter - 抽象类,继承它需要实现较多的方法。所以就具有较高的灵活性,

实现了 ListAdapter和SpinnerAdapter。

 

BaseAdapter 需要重写的方法如下:

(1) getCount()         ; 用于获得当前列表的数据数量

(2) getItem(int position)       取得当前数据, position 是指第几个

(3) getItemId(int position)    取得 position 的数据项的ID

(4) getView(int position,View convertView, ViewGroup parent)  

          其中 position 是指元素的下标,可以根据这个 position 得到当前的 item 的元素。

                  convertView 这个是指将已经加载好的布局进行缓存

 

ListView 在开始绘制的时候,系统首先调用 getCount() 函数,得到 listView 的长度,然后根据这个长度,

调用 getView() 逐行绘制每一行。如果你的 getCount() 返回的是0时,列表将不显示,同样会返回1,就只显示一行。


 

 

 

 

 


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值