共计 1327 个字符,预计需要花费 4 分钟才能阅读完成。
listView 的应用
1 应用步骤
- 获取 ListView 控件对象
- 筹备数据源
- 筹备适配器
-
适配器关联到 ListView
数据源能够从服务器 网络下载而来,也能够从数据地面读取。!!!数组中的数据无奈间接传递给 LsitView,须要结组适配器实现 Adapter。1
2 适配器
2.1 适配器 Adapter
适配器是数据和视图的桥梁,负责把数据的内容显示 hi 到视图定义的外观布局中。
2.2 适配器的品种
名称 | 阐明 |
---|---|
ArrayAdapter | 简略的文字列表 |
SimpleAdapter | 简略的图文混搭列表 |
SimpleCursorAdapter | 数据源是数据库的列表 |
自定义 Adapter | 最灵便的适配器实用于绝大多数状况 |
以上适配器都继承自 BaseAdapter
2.3 ArrayAdapter 实现文字列表
- 获取控件
- 建设 String[] 数组的数据源
- new 一个 ArrayAdapter 适配器
- 适配器关联到 ListView
2.4 应用 SimpleAdapter 实现图文混编列表
适配器工作原理
-
布局文件
- 增加 ListView 标签 - 编写行布局 item.xml * 配置对于 id
-
Activity
-
获取 listview 对象
- 筹备数据源 List< Map > + 将复合数据存储到几乎对数据中
-
配置适配器
- 将适配器关联到 ListView
-
-
2.5 自定义 Adapter
实现自定义 Adapter 的步骤
- 继承 BaseAdapter
- 实现 getView 办法
- 关联 ListView
-
自定义 Adapter
- 增加数据汇合
- 增加反射器 LayoutInflater
- 实现结构器和
- 实现 getView 和 setter 办法
-
在 Activity 中调用 MyAdapter
- 筹备适配器
- 将 adapter 关联到 listview
3 ListView 罕用事件
名称 | 阐明 | true/false | 阐明 |
---|---|---|---|
onItemClick | Item 点击事件 | true/fasle | 消化事件,事先不会持续传递 / 不消化事件,事件会持续传递上来 |
onItemLongClick | Item 长按事件 | true/fasle | 消化事件,事先不会持续传递 / 不消化事件,事件会持续传递上来 |
如果心愿长按事件后,不再触发点击事件,则应该将返回值为 true
4 Selector 背景选择器
selector 背景选择器
-
是 drawable 文件夹下的一种资源文件.xml
+ 创立资源文件 + 编写 Selector 文件:通常状态 / 点击状态 + 设置 button 的背景树型为 Selector 背景选择器的资源的援用
- 在其中能够定义多种不同状态下的控件背景
- 罕用的状态如下表
名称 | 阐明 |
---|---|
android:state_pressed | 控件是否被按压 |
android:state_focused | 控件是否取得焦点 |
android:state_enabled | 控件是否可用 |
android:state_selected | 控件是否被选中 |
留神
getview 办法的每次调用都须要执行两个耗时操作
- inflate 办法耗时 convertView 解决。一级优化
- findeViewById 办法耗时 ViewHoulder 解决。二级优化
ConvertView 的原理和应用
ViewHolder 的原理和应用
————————————————————————
[1]《第一行代码 –Android(第二版)》郭霖
[2] < 从零开始的安卓入门课程 > 孙老师非要难堪
- 1 ↩
正文完