Android – Textview change color on changing of state

create xml under res/color dir.

example file name : 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>

you can add more states. you can use color code like “#ffffff” instead of predefined “@color/White”.
Becarefull, use android:color not android:drawable. this example changes color of text when pressed on it. set the textColor attribute to selector above.

<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>

Leave a Comment

tech