2011-11-09 13 views
6

Sto provando a modificare uno stile TextView in base al suo stato. mio styles.xml contiene:TextView state_pressed/state_focused/state_selected style change

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

mio selettore (text_ops.xml) è definita come:

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

Ma quando applico questo al mio TextView (style="@drawable/text_ops") non funziona. Qualche consiglio?
Grazie

+0

hai mantenuto ur styles.xml in RES-> cartella valori ??? – Hanry

+0

Sì, ho Hanry. – trenpixster

risposta

9

In Android, per quanto ne so, esistono solo due elenchi di stati 1. Risorsa elenco colori elenco 2. StateListDrawable. Se si utilizza lo stile in esso quindi si prega di ricontrollare il doc

controlli prego sotto il link per maggiori informazioni

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

Grazie Maneesh, credo sia stato questo il problema. Sai di tutto il lavoro? – trenpixster

1

Il problema è la linea style="@drawable/text_ops" questo dovrebbe essere style = "@ stile/text_ops".

Non ho provato a utilizzare un selettore per gli stili, ma sarebbe bello se funzionasse in questo modo.

+0

Sì, so cosa intendi. Penso anche che sia un po 'strano mettere il file di selezione __styles__ nella cartella __drawables__, ma non penso sia possibile includere il selettore in 'values ​​/ styles.xml'. – trenpixster