Android ImageButton - Wie um das Bild zu ändern, wenn die Schaltfläche geklickt wird?

Wenn die Schaltfläche geklickt wurde, will ich schalten Sie die WLAN-und auch die ändern das Bild der ImageButton-Steuerelement, aber ich weiß nicht wie ich es ändern

Habe ich auch versucht, diese aus so ändern Sie das Bild von einer Taste mit jedem Klick? aber nicht funktioniert:

boolean isPressed=false
button.setOnClickListener(buttonListener);

OnClickListener buttonListener= new OnClickListener() {
@Override
public void onClick(View v) {
    if(isPressed){
    button.setBackgroundResource(R.drawable.icon1);
    }else{
    button.setBackgroundResource(R.drawable.icon2);
    }
    isPressed=!isPressed;
}};

wenn ich Schreibe den code von oben, android studio zeigt:
Cannot resolve symbol setOnClickListener

Habe ich auch erstellt eine button_wifi_selector xml-Datei sieht es wie folgt aus:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<item android:drawable="@drawable/wifi_on"
    android:state_pressed="true" />
<item android:drawable="@drawable/ic_launcher"
    android:state_focused="true" />
<item android:drawable="@drawable/wifi" />

</selector>

und in meiner Tätigkeit habe ich diese

<ImageButton
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/imageButton_wifi"
    android:layout_below="@+id/toggleButton_wifi"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:onClick="turnOffWifiDemo"
    android:src="@drawable/button_wifi_selector" />

ist es aber nicht tun, was ich will
Kann jemand pls mir helfen?
Dank

EDIT: klappt es mit dem ersten code. Ich musste Sie nur entfernen Sie die onClick vom ImageButton im xml -
ABER: er verändert das Bild das zweite mal, wenn ich starten Sie die app. Nachdem er ändert es jedes mal

entfernen Sie diese Zeile android:onClick="turnOffWifiDemo", wie Sie mit Hilfe onclicklisten in java-code so verwenden Sie entweder im xml-oder java-Klasse
Statt ImageButton-Steuerelement, die Sie verwenden können, Toggle-Button
Danke!!! Aber wissen Sie, wie kann ich das bei einem onClick-Methode (die ich nicht wollen, verwenden Sie die onClickListener)
Was ist Ihre Ausgabe, wenn Sie verwenden Sie den Selektor Weg?
nichts....während Sie die Taste drücken, zeigt er wifi_on und wenn Sie es entlassen, es zeigt wifi

InformationsquelleAutor Ali | 2014-07-15

Schreibe einen Kommentar