2016-03-31 29 views
0

ImageButtons için bir dokunma geri bildirimini nasıl uygularım? Düğmeye dokunduğunda görüntü düğmesinin resmi değiştirmesini istiyorum. Zaten araştırdım, ama çalışmayan bazı şeyleri denedikten sonra biraz çaresizim. Bir seçici bu sorun için doğru şey ve bu nasıl çalışır?ImageButton dokunmatik geri bildirim

Geçerli denemem, çekilebilir klasörde yeni bir .xml dosyası oluşturmaktır. Orada bir seçici koyardı, bu .xml dosyası için benim geçerli kod:

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

Ve bu .java dosyası için benim geçerli kod:

btnTest = (ImageButton) findViewById(R.id.btnTest); 
btnTest.setOnClickListener(new View.OnClickListener() { 

    public void onClick(View button) { 
     //Set the button's appearance 
     button.setSelected(!button.isSelected()); 

     if (button.isSelected()) { 
      //Handle selected state change 
     } else { 
      //Handle de-select state change 
     } 
    } 
}); 

cevap

0

kolaylıkla yapabilirsiniz Bir durum listesi kullanarak ve her bir duruma farklı bir görüntü atamak: https://developer.android.com/guide/topics/resources/drawable-resource.html#StateList

+0

Sanırım tam da şu anda denediğim şey bu, ama işe yaramıyor. Kodu soruma ekledim. Belki bir hatayı fark edebilirsin? – MikeFry

+0

StateListDrawable öğesini ImageButton'unuzun çekilebilir hali olarak ayarlamanız gerekir. Eyaletleri kendiniz işlemek zorunda değilsiniz. – Vaiden

İlgili konular