Android - Textview在改变状态时改变颜色

Par*_*ani 18 android textview

如何在TextView的各种状态(聚焦,按下,启用)上应用颜色?

我已经提到了这个:http://developer.android.com/reference/android/content/res/ColorStateList.html,但不知道如何将颜色状态列表应用于TextView?或者还有其他方法吗?

更新:

我想改变背景颜色.

Eng*_*URK 35

在res/color目录下创建xml.

示例文件名:selector_white_gray.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/Gray"/> <!-- pressed -->
    <item android:color="@color/White"/> <!-- default -->
</selector>
Run Code Online (Sandbox Code Playgroud)

你可以添加更多的状态.您可以使用"#ffffff"等颜色代码而不是预定义的"@ color/White".Becarefull,使用android:color not android:drawable.此示例在按下文本时更改文本的颜色.将textColor属性设置为上面的选择器.

<TextView
       android:layout_width="wrap_content"
       android:layout_weight="1"
       android:layout_height="wrap_content"
       android:textColor="@color/selector_white_gray"
       android:textSize="18sp" 
       android:textStyle="bold" >
</TextView>
Run Code Online (Sandbox Code Playgroud)


Lab*_*lan 15

创建一个新的xml(在drawable文件夹中).使用颜色,您可以为每个事件状态指定图像,
您可以将此xml设置为背景

如果您的xml是' res/drawable/abc.xml',那么将背景设置为

android:background="@drawable/abc"
Run Code Online (Sandbox Code Playgroud)

编辑为在
我们的xml 状态xml中添加颜色,res/drawable/abc.xml

<?xml version="1.0" encoding="utf-8"?>
   <selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true"   
    android:drawable="@color/gray" />
</selector>
Run Code Online (Sandbox Code Playgroud)

然后宣布灰色 your res\values\strings.xml

<color name="gray">#808080</color>
Run Code Online (Sandbox Code Playgroud)