2011-11-09 6 views
6

상태에 따라 TextView 스타일을 변경하려고합니다. 내 styles.xml에는 다음이 포함TextView state_pressed/state_focused/state_selected 스타일 변경

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

내 선택 (text_ops.xml)는 다음과 같이 정의된다 :

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

하지만 내 텍스트 뷰 (style="@drawable/text_ops")에이를 적용 할 때 작동하지 않습니다. 팁이 있습니까?
감사합니다.

+0

당신은 유지 한 UR styles.xml> 값 폴더 ??? – Hanry

+0

예. 할머니가 있습니다. – trenpixster

답변

9

내 지식에 따라 안드로이드에는 단 2 개의 상태 목록 1 만 있습니다. 색상 상태 목록 자원 2. StateListDrawable. RES-에서 당신이 그것에 스타일을 사용하는 경우 다음

더 많은 정보를 원하시면 아래 링크를 확인하시기 바랍니다 문서를 다시 확인하시기 바랍니다

  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

감사합니다 Maneesh, 그게 문제라고 생각합니다. 어떤 문제를 알고 있습니까? – trenpixster

1

문제는 라인 style="@drawable/text_ops"입니다.이 스타일은 "@ style/text_ops"여야합니다.

스타일 용 선택기를 사용하지 않았지만 그렇게 작동하면 멋지다.

+0

네가 무슨 뜻인지 알아. 나는 또한 __styles__ 셀렉터 파일을 __drawables__ 폴더에 넣는 것이 이상하다고 생각하지만,'values ​​/ styles.xml' 안에 셀렉터를 포함시키는 것이 가능하지 않다고 생각합니다. – trenpixster