TextView state_pressed/state_focused/state_selected style change

trenpixster picture trenpixster · Nov 9, 2011 · Viewed 12k times · Source

I'm trying to change a TextView style based on its state. My styles.xml contains:

<style name="text_normal_ops">  
    <item name="android:gravity">left</item>  
    <item name="android:textColor">@color/text_usual_color</item> 
    <item name="android:textStyle">bold</item>  
</style>  
<style name="text_normal_ops_pressed">  
    <item name="android:gravity">left</item>  
    <item name="android:textColor">@color/text_pressed</item>  
    <item name="android:textStyle">bold</item>  
</style>

My selector (text_ops.xml)is defined as:

<selector xmlns:android="http://schemas.android.com/apk/res/android">  
    <item android:state_pressed="true" style="@style/text_normal_ops_pressed" />  
    <item android:state_focused="true" style="@style/text_normal_ops_pressed" />  
    <item android:state_selected="true" style="@style/text_normal_ops_pressed" />  
    <item style="@style/text_normal_ops"/>  
</selector>

But when I apply this to my textview (style="@drawable/text_ops") it does not work. Any tips?
Thanks

Answer

Maneesh picture Maneesh · Nov 9, 2011

In android as per my knowledge there is only two state-list 1. Color State List Resource 2. StateListDrawable. If you are using style in it then please recheck the doc

Please check below link for more info

  1. http://developer.android.com/guide/topics/resources/color-list-resource.html
  2. http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList