Quiero imagenbotón con dos estados i) normal ii) toque (o haga clic).¿Cómo establecer la imagen de fondo del botón de imagen para un estado diferente?
he puesto imagen normal en el ImageButton fondo y estoy tratando cambioimagen (pulsado) a partir onclick método, pero no cambia.
Quiero que si presiono el botón de imagen, la imagen debería cambiar de normal a presionada hasta que presione el otro botón, pero no sucede.
¿Alguien me puede sugerir cómo puedo hacer esto con el selector o en el tiempo de ejecución?
Aquí está mi código imagebuttonpanel.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:gravity="bottom"
android:id="@+id/buttonpanel">
<ImageButton android:id="@+id/buttonhome"
android:layout_width="80dp"
android:layout_height="36dp"
android:focusable="true"
android:background="@drawable/homeselector">
</ImageButton>
<ImageButton android:id="@+id/buttonsearch"
android:layout_height="36dp"
android:layout_width="80dp"
android:background="@drawable/searchselector"
android:focusable="true">
</ImageButton>>
<ImageButton android:id="@+id/buttonreg"
android:layout_height="36dp"
android:layout_width="80dp"
android:background="@drawable/registerselector"
android:focusable="true">
</ImageButton>>
<ImageButton android:id="@+id/buttonlogin"
android:layout_height="36dp"
android:layout_width="80dp"
android:background="@drawable/loginselector"
android:focusable="true">
</ImageButton>
</LinearLayout>
y mi xml selector es
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!--<item android:state_pressed="true" android:drawable="@drawable/homehover"
/> <item android:state_focused="true" android:drawable="@drawable/homehover"
/> <item android:drawable="@drawable/home" /> <item android:state_window_focused="true"
android:drawable="@drawable/homehover" /> -->
<item android:state_enabled="false" android:drawable="@drawable/homehover" />
<item android:state_pressed="true" android:state_enabled="true"
android:drawable="@drawable/homehover" />
<item android:state_focused="true" android:state_enabled="true"
android:drawable="@drawable/homehover" />
<item android:state_enabled="true" android:drawable="@drawable/home" />
</selector>
y también he tratado de cambiar la imagen de recursos en caso ontouch y onclick, pero no resuelve el problema.
Creo que eres mirada para algo como [esto] (http://stackoverflow.com/questions/3097710/android-change-button-background-programmatically/3097844#3097844). Hice una pregunta similar atrás. –