Android Studio中Spinner控件的使用方法2-2

3 通过Spinner修改TextView的颜色

接下来通过Spinner控件实现如下功能,如图6所示。
 
 
图6 通过Spinner修改TextView的颜色
通过选择Spinner的子项对应的颜色,将TextView中显示的内容改为相应的颜色。

3.1 设置布局

在LinearLayout中通过如下代码创建布局。
 
 
图7 布局文件代码

3.2 为Spinner控件添加子项选中监听器

接下来为Spinner控件添加子项选中监听器,当用户点击了Spinner控件的某个子项时,就会激活该监听器,代码如图8所示。
 
 
图8 Spinner子项选中监听器

sp1是“2.1 关联控件”中提到的与Spinner控件关联的变量,通过该变量调用setOnItemSelectedListener()方法设置Spinner控件的子项选中监听器。setOnItemSelectedListener()方法的参数是AdapterView.OnItemSelectedListener类的变量,该变量指定了一个回调函数,当用户点击了Spinner控件的某个子项时,Andorid系统就会调用该变量指定的回调函数。AdapterView.OnItemSelectedListener类有两个公共的回调方法(图8②)所示,其中当用户点击了某个子项时,会调用onItemSelected()函数(图8③);当子项列表消失的时候,会调用onNothingSelected()函数。

当用户点击了某个子项时,系统会调用图8②所示的onItemSelected()函数。该函数的参数adapterView表示用户选择的是哪一个视图,在这里adapterView指的就是Spinner这个控件;变量view表示的是用户选中的那个子项;变量i表示选中子项的索引值;变量l表示选中子项的行ID。

3.3 为子项选中监听器添加功能

在onItemSelected()函数中,使用switch…case语句对参数进行判断,代码如图9所示。

图9 不同的选项进行不同的处理

其中,tv1是TextView类的对象,并且已经和图7中的TextView控件关联。通过tv1调用TextView类的setTextColor()函数设置TextView控件中文字的颜色,其效果如图10所示。

图10 修改TextView颜色

猜你喜欢

转载自blog.csdn.net/hou09tian/article/details/127588097