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

  • BumbleDroid

    BumbleDroid

    18 EKİM 2010
  • Google Analytics

    Google Analy

    25 ŞUBAT 2008
  • Willie D.

    Willie D.

    16 Aralık 2006