2011-11-09 14 views
6

Próbuję zmienić styl TextView na podstawie jego stanu. Moja styles.xml zawiera:TextView state_pressed/state_focused/state_selected zmiana stylu

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

Moja selektor (text_ops.xml) jest zdefiniowany jako:

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

Ale kiedy stosuje się to do mojego TextView (style="@drawable/text_ops") nie działa. Jakieś wskazówki?
Dzięki

+0

ty trzymane ur styles.xml w li-> folder wartości ??? – Hanry

+0

Tak, mam hanry. – trenpixster

Odpowiedz

9

W Androidzie według mojej wiedzy jest tylko dwie listy stanów 1. Zasoby listy stanów koloru 2. StanListDrawable. Jeśli używasz styl w nim to proszę ponownie sprawdzić doc

Proszę sprawdzić poniższy link, aby uzyskać więcej informacji

  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

Dzięki Maneesh, myślę, że to był problem. Czy znasz jakieś obejście? – trenpixster

1

Problemem jest linia style="@drawable/text_ops" powinna to być styl = "@ style/text_ops".

Nie próbowałem używać selektora dla stylów, ale byłoby fajnie, gdyby działało w ten sposób.

+0

Tak, wiem o co ci chodzi. Sądzę też, że jest trochę dziwne umieszczanie pliku selektora __styles__ w folderze __drawables__, ale nie sądzę, że możliwe jest umieszczenie selektora wewnątrz 'values ​​/ styles.xml'. – trenpixster

Powiązane problemy