我有一个带有3个文本视图的线性布局。我想在选择任何文本视图时更改文本视图的字体颜色。我想保留新颜色,直到选择另一个文本视图。基本上,这种线性布局应该模仿复选框的选择行为。我想使用选择器来更改文本视图的字体颜色的颜色。
我在文本视图的textColor上使用了以下选择器,只要按下文本视图,这只会更改字体颜色
android:textColor="@drawable/selector_header_text"
XML
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:color="@color/blue"></item>
<item android:state_focused="true" android:color="@color/blue"/>
<item android:color="@color/light_gray"></item>
</selector>
如何在线性布局中创建文本视图以保留文本颜色,只要选中它而不仅仅按下它?
答案 0 :(得分:8)
将代码android:state_selected="true"
添加到您的选择器文件
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:color="@color/blue"></item>
<item android:state_focused="true" android:color="@color/blue"/>
<item android:state_selected="true" android:color="@color/blue"/>
<item android:color="@color/light_gray"></item>
</selector>
在您的班级文件中添加以下代码
textView.setselected(true);
答案 1 :(得分:0)
另外使用android:state_checked
代替android:state_pressed
。