当前课程知识点:Android应用开发基础 > 第三章 Android组件 > 3.4 Android适配器 > 3.4.1实践案例-系统适配器
本节我们通过实例来介绍Android的适配器
主要包括Spinner下拉框组件和ListView列表组件
下面通过选项框实例介绍Spinner控件的使用过程
首先创建一个应用程序
设置应用程序的名字
进入布局文件
删除默认组件
新建TextView组件
设置文本为Spinner实例
设置限制性属性 顶部为8dp
设置文本padding为8dp
设置组件居中
新建数组文件array.xml
新增string-array属性 定义name为MyArray
新增7个Item
内容分别为星期一到星期日
新建Spinner组件
设置宽度和高度为内容适配
设置entries属性为array文件中的MyArray数组
设置spinner与textview对齐
设置距离顶部 左右为16dp
右键Generate-LayoutCreator
组件变量命名采用mAaBbCc的方式
定义私有字符数组变量strWeeks
赋值为星期一到星期日
注册OnItemSelectedListener事件
实现AdapterView.OnItemClickListener接口
ctrl+I实现未实现的方法
OnCreate函数中调用initData方法
实现initData方法
定义并初始化ArrayAdapter对象
String代表处理字符类型数据
第一个参数代表当前的Activity
第二个参数代表
使用系统默认的布局显示Spinner的子项
第三个参数使用字符数组strWeek
Spinner组件对象的初始化
使用mSpinner.setPrompt设置标题
使用mSpinner.setAdapter
将Spinner组件对象与适配器对象绑定
mSpinner.setSelection设置当前的子项为第一行
OnItemSelected() 参数i代表子项序号
从0计数
定义临时字符串变量strMsg
strMsg赋值为子项被选中
%d代表通配符
使用i+1赋值
其中%s代表通配符
使用strWeeks[i]赋值
使用Toast显示信息
this代表当前Activity
第二个参数代表要显示的文本
第三个参数表示提示的时间
代码编写完成后运行程序
点击Spinner控件子项
提示被点击子项的序好和内容
下面通过图片框实例介绍ListView组件
首先创建一个应用程序
设置应用程序的名字
删除默认组件
新建TextView组件
设置文本为ListView例子
设置文本padding为8dp
设置组件居中
设置距离顶部为8dp
新建ListView组件
设置宽度和高度为内容适配
设置顶部、底部、左右为16dp
listview的顶部与textview对齐
设置ListView组件id为listview
新建ListView显示的子项子布局list_item.xml
list_item.xml子布局使用线性布局
布局的高度为wrap_parent
新建一个ImageView
宽度和高度设置为100dp
设置id为img
源文件为默认安卓图标
边缘距离为5dp
新建一个线性子布局
宽度为内容适配 高度为100dp
从上到下排列
距离顶部5dp
距离左边10dp
新建一个TextView
宽度和高度设置为内容匹配
文本为名字
文本大小为20sp
id为tv1
距离顶部10dp
复制上面的textview
文本为内容
id为tv2
右键Generate-LayoutCreator
组件变量命名采用mAaBbCc的方式
把图片drawable文件夹下
定义私有整型数组变量iPic
赋值为图片id
定义私有字符数组变量strName
初始化为图片的名称
定义私有字符数组变量strContent
初始化为图片的说明
定义ArrayList变量mArrayList
绑定ListView组件的子项选中事件
实现onItemClickListener接口
CTRL+I 的方法OnItemClick;
OnCreate函数中调用initData方法
实现initData方法
初始化mArrayList对象
将显示的数据对应添加到mArrayList数组
定义并初始化Map对象map
键值类型为String
值为Object对象
将图片id存储到键值对“image”中
将图片名称存储到键值对“name”中
将图片说明存储到键值对“content”中
将map对象存储到mArrayList数组中
新建SimpleAdapter适配器对象并初始化
第一个参数 上下文对象为this
第二个参数 多列数据集合mArrayList
第三个参数 每一个item的布局文件
第四个参数 数组的里面的每一项要与第二个参数中
存入键值值一样
并且一一对应
第五个参数中 item里面的控件id的int数组
将ListView组件与适配器绑定
此处的键值为image
实现OnItemClick方法
参数i代表子项序号
从0计数
定义并初始化Map对象
map值通过mArrayList.get获取
定义临时字符串变量strMsg
strMsg赋值为选择了第几个子项
%d代表通配符
使用i+1赋值
使用map.get("name")获取图片名称
使用Toast显示信息
代码编写完成后运行程序 效果如图所示
这就是AndroidSpinner下拉框组件和ListView列表组件 实现的全部内容
请大家按照讲课的内容完成Spinner下拉框组件和ListView列表组件的代码编写
在Android的模拟器和手机中分别运行
通过实例理解系统适配器的使用过程
-Android Studio4.1.2安装常用问题汇总2021.3.15
-1.1 Android概述
--1.1 Android Studio安装与配置-实践案例
-1.1 Android概述--作业
-1.2 Android程序
-1.2 Android程序--作业
-1.3 Android程序调试
-1.3 Android程序调试--作业
-2.1 Activity概述
-2.1 Activity概述--作业
-2.2 Activity应用
-第2章 Android视图--2.2 Activity应用
-3.1 Activity布局
-3.1 Activity布局--作业
-3.2 Android基础组件
-3.2 Android基础组件--作业
-3.3 Android中级组件
-3.3 Android中级组件--作业
-3.4 Android适配器
-3.4 Android适配器--作业
-4.1 Fragment碎片组件
-4.1 Fragment碎片组件--作业
-4.2 ViewPager翻页类组件
-4.2 ViewPager翻页类组件--作业
-讨论:fragment与activity的生命周期有哪些不同?
-5.1 Android广播概述
-5.1 Android广播概述--作业
-5.2 Android广播工作原理
-5.2 Android广播工作原理--作业
-5.3 自定义广播
-第5章 广播--5.3 自定义广播
-5.4 有序广播
--5.4有序广播
-第5章 广播--5.4 有序广播
-6.1 系统服务概述
-6.1 系统服务概述--作业
-6.2 访问系统服务
-6.2 访问系统服务--作业
-6.3 自定义服务
-第6章 Android服务--6.3 自定义服务
-6.4 多线程
--6.4 多线程
-第6章 Android服务--6.4 多线程
-7.1 Android运行权限
-7.1 Android运行权限--作业
-7.2 URL URI概述
-第7章 内容提供者ContentProvider--7.2 URL URI概述
-7.3 ContentProvider概述
-第7章 内容提供者ContentProvider--7.3 ContentProvider概述
-7.4 访问通讯录
-第7章 内容提供者ContentProvider--7.4 访问通讯录
-7.5 课后作业案例
-8.1 相机服务
--8.1 相机服务
-8.1 相机服务--作业
-8.2 音视频服务
-8.2 音视频服务--作业
-9.1 网络服务概述
-9.1 网络服务概述--作业
-9.2 网络框架
--9.2 网络框架
-9.2 网络框架--作业
-9.3 Json
--9.3 Json
-第9章 网络技术--9.3 Json
-9.4 Volley
-第9章 网络技术--9.4 Volley
-10.1 文件存储
--10.1.3 实践案例-SharedPreference文件读写
-10.1 文件存储--作业
-10.2 数据库存储
-10.2 数据库存储--作业
-第1章 实训简介以及开发环境配置
-第2章 在线音乐播放器整体设计以及服务端开发
-第3章 在线音乐播放器-客户端开发
-第4章 在线音乐播放器-完整版
-第5章 QQ聊天项目
-第6章 在线点餐系统