Selector de fondo de botones

Trato de cambiar el fondo de botones si se presionan. Construyo un Selector como la respuesta sugerida aquí: Standard Android Button con un color diferente

Finalmente quiero poner GradientDrawables dentro, pero para fines de depuración sólo quiero establecer un color, para ver que está funcionando. Aquí está mi Selector

<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@color/red"/> <item android:state_focused="true" android:drawable="@color/white"/> <item android:state_pressed="true" android:drawable="@color/white"/> </selector> 

Lamentablemente esto no funciona. Puse el selector como fondo de mi botón, y sólo verlos en color rojo. ¿Qué estoy haciendo mal (Build Target 2.1)

Poner esto al final

Artículo android: drawable = "@ color / red"

Quiero decir, como la tercera opción, que funcionará. Android comprueba las condiciones xml desde el principio, la primera etiqueta no tiene ninguna condición, por lo que siempre seleccionará rojo, por lo que ha puesto las condiciones primero y luego el predeterminado.

Aquí está el código que uso, y funciona muy bien.

  <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/button_clicked" android:state_pressed="true" android:state_enabled="true" /> <item android:drawable="@drawable/button" android:state_enabled="true" /> </selector> 

Aquí utilizo dos imágenes que hice usando photoshop como fondo

El primero es button_clicked y el segundo es button

Copiar y cambiar el uso de sus propios recursos.

Espero poder ayudar

  • Android.R.color.transparent no es totalmente transparente
  • Notificación del temporizador de cuenta regresiva
  • ¿Cuál es la diferencia entre ImageView.setBackgroundResource y ImageView.setImageResource?
  • obtener el color de fondo de textview sin utilizar ColorDrawable (API 11)
  • ¿Cómo se restablece el servicio de WhatsApp incluso si debo detener la aplicación?
  • Crear programaticamente fondo textview desde drawable en android
  • Cambios de color de fondo de Android con ViewPager en ICS
  • Android - Ejecutar en segundo plano - Service vs. standard java class
  • ¿Cómo configuro una imagen de fondo de ListView vacía?
  • Android: aumenta AlertDialog desde el subproceso de fondo
  • Mantener la aplicación en ejecución en segundo plano
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.