2010-05-07 37 views
9

Kullanıcı, TextView'i tıklattığında metin rengini değiştiren özelleştirilmiş bir metin seçici tasarlamak istedim. Ne sahip Hata şişirme sınıf buradaandroid: özelleştirilmiş metin seçici

edilir:

java.lang.RuntimeException: aktiviteyi ComponentInfo {} başlatılamıyor: android.view.InflateException: İkili XML dosyası hat # 55 Ama şu hata var: çekilebilir/text_selector.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_enabled="false" 
     android:state_focused="true" 
     android:drawable="@color/black" /> 
    <item android:state_pressed="true" 
     android:drawable="@color/blue" /> 
    <item android:state_focused="true" 
     android:drawable="@color/black" /> 
</selector> 

düzen/textview.xml

<TextView android:id = "@+id/last_page_button" 
    android:text="@string/last_page_button_string" 
    android:gravity="center_horizontal" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="#ffffff" 
    android:textColor = "@drawable/text_selector" 
    android:layout_weight="1" /> 

değerler/color.xml

<resources> 
    <color name="white">#ffffffff</color> 
    <color name="black">#ff000000</color> 
    <color name="blue">#ffccddff</color> 

cevap

24

Sen textColor için çekilebilir atayamazsınız. Bir Renk olmalı. aşağıdaki gibi

<selector 
    xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item 
     android:state_selected="true" 

     android:color="@color/color1" /> 
    <item 
     android:color="@color/color2" /> 
</selector> 

/mycolor.xml olarak bu dosyayı kaydetmek ve @ renk olarak textColor atamak, sizin res içinde

+0

Renk klasörü olmak zorunda mı? Değerler klasörünün altına koyamıyorum? Denedim, değerler altında çalışmamıştı/ – Yang

+1

renk olmalı. Neden değerlere koydun ki? Ayrıca, görünümünüzün ebeveyninden durum aldığından emin olun. –

+0

teşekkürler, istisna artık yok. Ancak, metin görünümünü "tıklattığımda", renk değişmez. Basılı bir devlet olup olmadığını merak ediyorum? Yoksa sadece düğme için mi? Kullanıcı bir textivew'yi tıkladığında hangi durumu belirtmeliyim? – Yang

0

kullanım seçici mycolor bir klasör rengini oluşturmak:

<selector 
xmlns:android="http://schemas.android.com/apk/res/android"> 
<item 
    android:state_selected="true" 

    android:color="@color/c1" /> 
<item 
    android:color="@color/c2" /> 

İlgili konular