Android应用程序----UI界面控件(2)CheckBox,RadioButton,Spinner
Android应用程序----UI界面控件
CheckBox和RadioButton
CheckBox是一个同时可以选择多个选项的控件
RadioButton则是仅可以选择一个选项的控件
RadioGroup是RadioButton的承载体,程序运行时不可见,应用程序中可能包含一个或多个RadioGroup
一个RadioGroup包含多个RadioButton,在每个RadioGroup中,用户仅能够选择其中一个RadioButton
建立一个“CheckboxRadiobuttonDemo”程序,包含五个控件,从上至下分别是TextView01、CheckBox01、 CheckBox02、RadioButton01、RadioButton02
当选择RadioButton01, RadioButton02则无法选择
CheckboxRadiobuttonDemo在XML文件中的代码
第15行<RadioGroup>标签声明了一个RadioGroup
在第18行和第23行分别声明了两个RadioButton,这两个RadioButton是RadioGroup的子元素
引用CheckBox和RadioButton的方法参考下面的代码
CheckBox设置点击事件监听器的简要代码
与Button设置点击事件监听器中介绍的方法相似,唯一不同在于将Button.OnClickListener换成了CheckBox.OnClickListener
RadioButton设置点击事件监听器的方法
Spinner是一种能够从多个选项中选一选项的控件,类似于桌面程序的组合框(ComboBox),但没有组合框的下拉菜单,而是使用浮动菜单为用户提供选择
建立一个程序“SpinnerDemo”包含3个子项Spinner控件
SpinnerDemo在XML文件中的代码
第5行使用<Spinner>标签声明了一个Spinner控件
第6行代码中指定了该控件的宽度为300dip
在SpinnerDemo.java文件中,定义一个ArrayAdapter适配器,在ArrayAdapter中添加需要在Spinner中可以选择的内容,需要在代码中引入android.widget.ArrayAdapter和android.widget.Spinner
第2行代码建立了一个字符串数组列表(ArrayList),这种数组列表可以根据需要进行增减
<String>表示数组列表中保存的是字符串类型的数据
在代码的第3、4、5行中,使用add()函数分别向数组列表中添加3个字符串
第6行代码建立了一个ArrayAdapter的数组适配器,数组适配器能够将界面控件和底层数据绑定在一起
第7行代码设定了Spinner的浮动菜单的显示方式,其中,android.R.layout.simple_spinner_dropdown_item是Android系统内置的一种浮动菜单
第8行代码实现绑定过程,所有ArrayList中的数据,将显示在Spinner的浮动菜单中
设置android.R.layout.simple_spinner_item浮动菜单,显示结果如图
适配器绑定界面控件和底层数据,如果底层数据更改了,用户界面也相应修改显示内容,就不需要应用程序再监视,从而极大的简化的代码的复杂性