SORU
15 Ocak 2011, CUMARTESİ


Seçici görüntüleri programlı olarak değiştirin

Drawable görüntü kaynağı seçici koyduğu bir İmageView var. Nasıl programlı olarak erişim seçici ve vurgulanmış ve vurgulu olmayan devletin resimleri değiştirebilirim?

Burada seçici bir kod:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" android:id="@ id/iconSelector">
  <!-- pressed -->
  <item android:state_pressed="true" android:drawable="@drawable/btn_icon_hl" />
  <!-- focused -->
  <item android:state_focused="true" android:drawable="@drawable/btn_icon_hl" />
  <!-- default -->
  <item android:drawable="@drawable/btn_icon" />
</selector>

Diğer görüntüleri ile btn_icon_hl btn_icon değiştirmek mümkün olmak istiyorum.

CEVAP
15 Ocak 2011, CUMARTESİ


Bulmak mümkün oldum (kendime benzer bir şey yapmaya çalıştım) kadarıyla, StateListDrawable zaten tanımlandıktan sonra tek bir durumu değiştirmek için bir yol yok. Ancak kod ile YENİ bir tane tanımlayabilirsiniz:

StateListDrawable states = new StateListDrawable();
states.addState(new int[] {android.R.attr.state_pressed},
    getResources().getDrawable(R.drawable.pressed));
states.addState(new int[] {android.R.attr.state_focused},
    getResources().getDrawable(R.drawable.focused));
states.addState(new int[] { },
    getResources().getDrawable(R.drawable.normal));
imageView.setImageDrawable(states);

Ve sadece bir elinin iki tutmak, ya da hiç bu kadar farklı bir tane oluşturabilirsiniz.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Hudson Music

    Hudson Music

    13 Mart 2007
  • Kat Krazy

    Kat Krazy

    12 Kasım 2010
  • Mary Jane Tauyan

    Mary Jane Ta

    20 AĞUSTOS 2009