SORU
28 AĞUSTOS 2010, CUMARTESİ


Seçici TextView arka plan rengi

Arka plan, kullanıcı dokunduğunda TextView Android widget rengini değiştirmek için girişimde bulundum. res/color/selector.xml içinde saklı olan bu amaç için bir seçici yarattım ve kabaca bu gibi görünüyor:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:state_pressed="true"
        android:color="@color/semitransparent_white"
        />
    <item
        android:color="@color/transparent"
        />
</selector>

TextView clickable niteliktirtrueilgi yok bu durumda.

android:background="@color/selector", TextView Bu seçici uyguladığım zaman, çalışma zamanında aşağıdaki özel durum alıyorum:

ERROR/AndroidRuntime(13130): Nedeni: org.xmlpull.v1.XmlPullParserException: İkili XML dosyası satır #6: tag "drawable" drawable tanımlama . öznitelik veya alt etiketi olması

Ben değiştirmek için öznitelik drawable, çalışıyor, ama sonuç tamamen yanlış, çünkü Kimlikleri görünür yorumlanan resim başvurular yerine renk başvuruları (olarak "drawable" göstermektedir.

Renk referans sağlayabilirim bana ne, örneğin "@renk/Siyah" olarak arka plan doğrudan bağlıyor. Bu beklendiği gibi çalışıyor. Seçiciler kullanarak çalışmıyor.

Ayrıca sorunsuz textColor olarak seçici kullanabilirsiniz.

Android arka plan-renk seçici TextView uygulamak için doğru yolu nedir?

CEVAP
1 Kasım 2011, Salı


Benoit çözümü çalışır, ama sen gerçekten bir şekil çizmek için yükü tabi gerek yok. Renkler drawables olabilir bu yana, sadece /res/values/colors.xml bir dosya içinde bir renk tanımlayın

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <drawable name="semitransparent_white">#77ffffff</drawable>
</resources>

Ve o zaman bile öyle seçiciyi kullanın:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:state_pressed="true"
        android:drawable="@drawable/semitransparent_white" />
</selector>

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • atKristaBradford

    atKristaBrad

    4 Aralık 2010
  • Rayone GB

    Rayone GB

    14 Temmuz 2007
  • YAN TV

    YAN TV

    20 EKİM 2011