¿Cómo establezco el estado de clic para mi botón personalizado?
Hice mi propio fondo para un botón y quiero que el botón cambie cuando se hace clic. Encontré este código:
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/boutonnpousse" android:state_pressed="true"/> <item android:drawable="@drawable/boutonn"/> </selector>
¿Pero dónde la uso? Traté de pegarlo en el archivo XML principal, pero no funciona.
- ¿Cómo puedo hacer que el texto de TextView sea de dos tamaños diferentes?
- Android ImageButton - no se puede obtener la imagen en el centro
- Android: crea automáticamente variables para todos los IDs en xml
- Android RatingBar mostrar recubrimiento negro en algunos dispositivos
- ¿Cómo aplicar dos estilos diferentes a un elemento en android?
- Rellene Spinner del origen de matriz de cadena, con un String ArrayAdapter
- ¿Cómo poner el carácter del espacio en un nombre de la secuencia en XML?
- Barra de herramientas superpuesta
- ¿Cómo eliminar la sombra sobre la barra de aplicaciones?
- Android: Edición de texto personalizado con XML
- Frontera de elementos de listview en android
- Diseño de Android - RelativeLayout (color de fondo)
- Org.w3c.dom.Document a String sin javax.xml.transform
Guardará esto como un archivo xml en la carpeta res/drawable
. Si esta carpeta no existe, créelo. En el ejemplo, el nombre de archivo que utilizo es selector_drawable_name.xml
Después de esto, cada vez que utilice un botón, y desee que tenga el efecto de clic, establezca su fondo a este dibujable:
<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button1" android:background="@drawable/selector_drawable_name" />
Resultado: Cuando el estado del botón cambia a state_pressed
, el fondo seleccionado será @drawable/boutonnpousse
. Por defecto (en cualquier otro estado) será @drawable/boutonn
.
Por cierto … puede usar el generador de XML de lista de estado en el siguiente sitio:
http://myandroidsolutions.blogspot.co.il/p/android-state-list-generator-v2.html
Sólo marque los estados que desea agregar y asigne nombres de archivo dibujables en los campos correspondientes en la parte inferior. El generador generará los elementos XML en el orden correcto usando los estados correctos.
- ¿Por qué no puedo usar getFilesDir (); En un contexto estático?
- ReferenceError: La cámara no está definida