SORU
21 ŞUBAT 2013, PERŞEMBE


Nasıl "?android:ot/activatedBackgroundİndicator" iş?

Aradığım nasıl bir vurgulama Seçili öğeyi bir listesini görüntülemek için bir bağlamsal eylem bar için seçim ve çözüm buldum oldu set android:background öznitelik benim satır düzeni xml için "?android:attr/activatedBackgroundIndicator".

Nasıl olsa bu işin ayarı mı?

  1. mekanizması nedir?
  2. sözdizimi öğeleri gibi " ne?", "", "activatedBackgroundİndicator" demek? ot
  3. "activatedBackgroundİndicator" tanımlı? anlamı

CEVAP
10 NİSAN 2013, ÇARŞAMBA


Eğer adli bir ruh halinde iseniz, burada kazmak ve ne olup bittiğini öğrenmek için.

android:background="?android:attr/activatedBackgroundIndicator"?

Sezgisel olarak bunun anlamı, bazı drawable için arka plan ayarlayın.

Ama bu daha gizemli bizim drawable biz nasıl görmek ayrıştırmak sağlar.

Demek kesin olarak "arka plan hangi özniteliği için öznitelik kümesi "" . activatedBackgroundİndicator ^strong>geçerli temayı ifade eder.

Eğer "geçerli tema" bölümü, temelde kapakları arkasında. oluyor her şey anlam ifade eder anlarsın

Temelde,activatedBackgroundİndicator gerçek bir drawable drawable ama bir başvuru değildir. "ActivateBackgroundİndictor" özniteliği aslında tanımlı?

Dosya adı sdk dizin içinde tanımlanmışattrs.xml. Örneğin:

path_to_android_sdk/android-17/ platformlar/data/res/values/attrs.xml

Eğer bu dosyayı açarsanız, aşağıdaki gibi beyan edeceksiniz

<attr name="activatedBackgroundIndicator" format="reference" />

attrs.xml daha sonra görünümü xml kullanmak için gidiyoruz tüm öznitelikleri bildirmek.Niteliği ve türü ilan ve aslında burada bir değer atama değiliz unutmayın.

Gerçek değeri atanmışthemes.xml. Bu dosya bulunur:

path_to_android_sdk/android-17/ platformlar/data/res/values/themes.xml

Eğer bu dosyayı açarsanız, görürsünüzbirden çok tanımları kullandığınız ne bağlı olarak. Örneğin, burada tema adı Tema, Tema için tanımlar.Işık, Tema.Holo Tema.Holo.Işık sırasıyla:

<item name="activatedBackgroundIndicator">@android:drawable/activated_background</item>
<item name="activatedBackgroundIndicator">@android:drawable/activated_background_light</item>
<item name="activatedBackgroundIndicator">@android:drawable/activated_background_holo_dark</item>
<item name="activatedBackgroundIndicator">@android:drawable/activated_background_holo_light</item>

Şimdi gizemli bizim drawables var. Eğer ilkini seçersen, drawable klasöründe tanımlanır:

path_to_android_sdk/android-17/ platformlar/data/res/drawable/activated_background.xml

Eğer bu dosyayı açarsanız, neler olduğunu anlamak için önemli olan drawable tanımını göreceksiniz.

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_activated="true" android:drawable="@android:drawable/list_selector_background_selected" />
    <item android:drawable="@color/transparent" />
</selector>

Burada varsayılan devlet şeffaf arka plan sadece ve eğer devlet ise iki devlet ile bir drawable - tanımlıyoruz "" o zaman bizim drawable"". list_selector_background_selected state_activated

arka plan bilgi için this link drawables ve Devletlere bakın.

< . p ^"list_selector_background_selected" drawable-hdpi klasörü içinde bulunan 9 Eki png dosyasıdır.

Şimdi doğrudan drawable dosyası bağlamak yerine bir referans olarak activatedBackgroundİndicator tanımladık doğru drawable tema bağlı olarak seçmesini sağlar.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Derek Banas

    Derek Banas

    12 AĞUSTOS 2008
  • Evan Coury

    Evan Coury

    29 NİSAN 2007
  • HTC

    HTC

    12 Ocak 2006