Wie kann ich ein Touch-Feedback für ImageButtons implementieren? Ich möchte, dass die Bildschaltfläche das Bild ändert, wenn die Schaltfläche berührt wird. Ich habe bereits gesucht, aber nachdem ich einige Dinge versucht habe, die nicht funktioniert haben, bin ich ein bisschen verzweifelt. Ist ein Selektor das Richtige für dieses Problem und wie funktioniert das?ImageButton Touch-Feedback
Mein aktueller Versuch ist es, eine neue .xml-Datei im Zeichnungsordner zu erstellen. Dort würde ich einen Wähler setzen, das ist mein aktueller Code für die XML-Datei:
<?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>
Und das ist mein aktueller Code für die .java-Datei:
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
}
}
});
Ich denke, das ist genau das, was ich gerade versuche, aber es funktioniert nicht. Ich habe den Code zu meiner Frage hinzugefügt. Vielleicht können Sie einen Fehler erkennen? – MikeFry
Sie müssen StateListDrawable als Zeichen für Ihr ImageButton festlegen. Sie müssen nicht selbst mit den Staaten umgehen. – Vaiden