《Android应用开发入门经典(第3版)》——第6.3节组合使用控件和适配器
本节书摘来自异步社区《Android应用开发入门经典(第3版)》一书中的第6章,第6.3节组合使用控件和适配器,作者 【美】Carmen Delessio , Lauren Darcey , Shane Conder,更多章节内容可以访问云栖社区“异步社区”公众号查看
6.3 组合使用控件和适配器
Android应用开发入门经典(第3版)
很多空间只有一个text属性。例如一个按钮可能会显示一个“OK”或者可能会将一行文本作为一个文本视图的标签。其他控件中必须要显示的数据可能会有很多,对于这些控件就可以使用适配器来将复杂的数据与控件联系起来。
6.3.1 适配器
一个 Adapter(android.widget.Adapter)将数据绑定到视图。例如,Spinner 是一个向用户提供一系列选项列表供选择的控件。这一个选项列表是这个视图运行时所需的数据。为了使得视图和数据之间能够联动起来,就需要使用一个适配器。在本节中将会使用预定义的适配器,如ArrayAdapter(android.widget.ArrayAdapter)。对于更加复杂的应用来讲,创建自定义的适配器是很常见的。在后续介绍游标和游标适配器的章节中将会创建自定义的适配器。
下面将使用一个 ArrayAdapter 来在一个Spinner控件和一个AutoCompleteTextView中显示同样的数据。
在本例中将会使用一个String数组,这个数组是在程序中定义的。当然,也可以将一个String数组定义成一种资源,但那种方法对于一个不会发生变化的列表来讲是合适的。
读者可以阅读第15章,获取更多有关创建自定义的适配器方面的信息。
6.3.2 使用Spinner控件
一个下拉框实际上是Android平台上的一个下拉列表。如图6.8所示,左图给出了一个未选中的下拉框,右图给出了同样的一个下拉框中下拉列表中“three”这个选项被选中的情形。
1.创建Spinner
为显示下拉框,需要对其进行定义并将其绑定到一个适配器。当下拉框完成设置之后,适配器中的数据应该是可用的。在本例中的数据是一个名为values的字符串数组常量:
通过将 values 数组关联到一个名为 android.R.layout.simple_spinner_item 的预定义系统资源,来创建一个名为 spinnerAdapter的 ArrayAdapter。将spinnerAdapter设置为下拉框的适配器。这个适配器将数据绑定到下拉框并指定了每一项如何显示。
2.从Spinner读取数据
对下拉框可以做很多处理。通过实现 OnItemSelectedListener()方法可以检测出下拉框中的一个条目何时被选中。使用 getSelectedItem()或 getSelectedItemPosition()方法可以读取下拉框中被选中的数据。
在本例中列表中存放的字符串,因此可以使用下面的方式来读取字符串的值:
《Android应用开发入门经典(第3版)》——第1.5节定制应用 本节书摘来自异步社区《Android应用开发入门经典(第3版)》一书中的第1章,第1.5节定制应用,作者 【美】Carmen Delessio , Lauren Darcey , Shane Conder,更多章节内容可以访问云栖社区“异步社区”公众号查看 1.5 定制应用 Android应用开发入门经典(第3版) 刚才创建的简单应用会显示如图1.11所示的词组“Hello world!”。
《Android应用开发入门经典(第3版)》——第1.4节运行应用 本节书摘来自异步社区《Android应用开发入门经典(第3版)》一书中的第1章,第1.4节运行应用,作者 【美】Carmen Delessio , Lauren Darcey , Shane Conder,更多章节内容可以访问云栖社区“异步社区”公众号查看 1.4 运行应用 Android应用开发入门经典(第3版) 要运行这个应用需要执行下列步骤。
《Android应用开发入门经典(第3版)》——第1.3节理解Java代码和XML布局 本节书摘来自异步社区《Android应用开发入门经典(第3版)》一书中的第1章,第1.3节理解Java代码和XML布局,作者 【美】Carmen Delessio , Lauren Darcey , Shane Conder,更多章节内容可以访问云栖社区“异步社区”公众号查看 1.3 理解Java代码和XML布局 Android应用开发入门经典(第3版) 如前所述,图1.7给出了XML文件activity_main.xml所表示的图形布局。
《Android应用开发入门经典(第3版)》——第1.2节立即创建一个简单的应用 本节书摘来自异步社区《Android应用开发入门经典(第3版)》一书中的第1章,第1.2节立即创建一个简单的应用,作者 【美】Carmen Delessio , Lauren Darcey , Shane Conder,更多章节内容可以访问云栖社区“异步社区”公众号查看 1.2 立即创建一个简单的应用 Android应用开发入门经典(第3版) 在本节中读者将会创建并运行一个简单的应用。
《Android应用开发入门经典(第3版)》——第1.1节建立开发环境 本节书摘来自异步社区《Android应用开发入门经典(第3版)》一书中的第1章,第1.1节建立开发环境,作者 【美】Carmen Delessio , Lauren Darcey , Shane Conder,更多章节内容可以访问云栖社区“异步社区”公众号查看 1.1 建立开发环境 Android应用开发入门经典(第3版) 要进行Android开发,首先需要创建一个可工作的开发环境。
《Android游戏编程入门经典》——导读 本节书摘来自异步社区《Android游戏编程入门经典》一书中的目录,作者【美】Jonathan S. Harbour,更多章节内容可以访问云栖社区“异步社区”公众号查看
异步社区 异步社区(www.epubit.com)是人民邮电出版社旗下IT专业图书旗舰社区,也是国内领先的IT专业图书社区,致力于优质学习内容的出版和分享,实现了纸书电子书的同步上架,于2015年8月上线运营。公众号【异步图书】,每日赠送异步新书。
相关文章
- Android studio 自己定义打包APK名称
- Android USB转串口通信开发实例详解
- Android-ImageView的属性android:scaleType作用
- Android studio的错误:radle sync failed: Cause: failed to find target android-21 :
- 《Android传感器开发与智能设备案例实战》——第2章,第2.2节安装JDK
- 《Android应用开发入门经典(第3版)》——第1.2节立即创建一个简单的应用
- 《Android应用开发入门经典(第3版)》——第1.4节运行应用
- 《Android应用开发入门经典(第3版)》——第1.6节小结
- 《Android应用开发入门经典(第3版)》——第1.7节问与答
- 《Android应用开发入门经典(第3版)》——第6.2节使用输入控件
- Android自定义属性时TypedArray的使用方法
- 如何将Stable diffusion转换为 TensorFlow-Lite 模型,实现iPhone和Android使用
- 为什么国外10年开发者退出 Android 开发以及他现在打算做什么
- 【Android开发经验】android:windowSoftInputMode属性具体解释
- 【Android Studio报错】:Failed to read key AndroidDebugKey from store “C:Users13181.androiddebug.keys
- Android Studio Error:Could not find com.android.tools.build:gradle