ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Android ListView

2021-03-07 23:05:20  阅读:265  来源: 互联网

标签:适配器 列表 View Android ListView Adapter android


1。ListView基本原理

ListView是显示内容得地方,Adapter规定显示内容得样式,DataSource提供数据源,减少了编写复杂显示样式得代码

ListView仅是作为容器(列表),用于装载显示数据(就是上面的一个个的红色框的内容,也称为item)。iem中的具体数据是由适配器( adapter)来提供的。

适配器(adapter):作为View(不仅仅指的ListView)和数据之间的桥梁或者中介,将数据映射到要展示的View中这就是最简单适配器模式,也是适配器的主要作用!

2。Adapter

Adapter:Adapter控件通常包含多个格式相同的列表,对于这些列表而言,使用setText()
、setTextColor()等方法将几十到几百行格式相同的内容进行简单的设置是不可取的。所以事先把要加载的内容放入到一个列表中,然后把这个列表放到Adapter中对各项资源统一进行设置。这个存放Adapter控件的内容列表称为Adapter(适配器)。Adapter可以理解为一个显示器,它可以把复杂的数据按人们容易接受的方式进行显示。

类型 特点

ArrayAdapter 默认情况下只显示文本信息,如果要显示其它的控件时,一般都需要重写 getView方法 通常将一个数组或集合放在 ArrayAdapter中

SimpleAdapter 它可以将静态的数据关联到XML布局文件中的某个View控件上,可以将List集合中多个象包装成多个列表项。

SimpleCursorAdapter与 SimpleAdapter类似,只是用于包装 Cursor提供的数据。

BaseAdapter 一般用于扩展,扩展 BaseAdap er可以对各列表项进行最太限度的定制

12.3ListView的基本使用方法
1.构建数据源
数组、集合、xml
2.创建适配器
ArrayAdapter<String)arrayAdapter=new ArrayAdapter(String)(this,android.R.layout.simple_1arr):
3.为ListView设置Adapter
setAdapter(arrayAdapter);

1.AutoCompleteTextView

特点 类型

ArrayAdapter: 默认情况下只显示文本信息,如果要显示其它的件时,一般都需要重写

getView 法通常将一个数组或集合放在ArrayAdapter中,它可以将静态的数据关联到ML局文件中的某个View控件上,可以将Lis集合

SimpleAdapter:中多个对象包装成多个列表项,与 SimpleAdapter似,只是用于包装 Cursor提供的数据

BaseAdapter:一般用于扩展,扩 BaseAdapter可以对各列表项进行最大限度的定制 ListView

属性说明

android:divider设置分割线

android:dividerHeight设置分割线高度

android: listSelector设置 ListViewitem选中时的颜色

android: scrollbars设置 ListView的滚动条

android:fadeScrollbars设置为true实现滚动条的自动隐藏和显示

android:headerDividersEnabled设置为 false,则不在 header View之前绘制隔条

android:footerDividersEnabled设置为 false,则不在 footer View之前绘制分隔条,指定一个数组资源(位于 valyes下的xM数组文件)

标签:适配器,列表,View,Android,ListView,Adapter,android
来源: https://blog.51cto.com/14589602/2650730

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有