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

  • BruBearBaby

    BruBearBaby

    25 Ocak 2011
  • Caramthros

    Caramthros

    10 AĞUSTOS 2007
  • DavideoDesign

    DavideoDesig

    24 NİSAN 2006