¿Cómo hago un dibujable de varias imágenes?

Tengo tres PNG de 9 parches que juntos forman el fondo de un botón (lado izquierdo, medio, lado derecho). Quisiera combinar estas tres imágenes juntas en un drawable que puedo especificar como el fondo para un botón en XML, algo a lo largo de las líneas de:

res/drawable/button_background.xml:

 <?xml version="1.0" encoding="utf-8"?> <nine-patch xmlns:android="http://schemas.android.com/apk/res/android" android:src="@drawable/button_left_side" /> <nine-patch android:src="@drawable/button_middle" /> <nine-patch android:src="@drawable/button_right_side" /> 

res/layout/main.xml:

 <button android:background="@drawable/button_background" /> 

es posible?

Después de algún ensayo y error, pude resolver el problema de una manera satisfactoria. Simplemente implemente una lista de capas que se puede dibujar de la siguiente manera:

 <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > <item android:drawable="@drawable/btn_left" android:left="0px" /> <item android:drawable="@drawable/btn_middle" android:left="26px" android:right="26px" /> <item android:drawable="@drawable/btn_right" android:right="0px" /> </layer-list> 

Donde los valores de 26px son el ancho de las dos imágenes del lado del botón en píxeles.

Para usar este dibujable, simplemente llámelo como cualquier otro dibujable:

 <bitmap android:src="@drawable/button_background" /> 

Esto funciona exactamente como usted esperaría que, con el medio de expansión como normal para ajustar el ancho deseado, y las tres imágenes de expansión para adaptarse a la altura deseada. Espero que otros puedan beneficiarse de esto!

  • Selector, lista de capas y forma / mapa de bits en el mismo xml
  • BitmapFactory.decodeResource () devuelve null para la forma definida en xml drawable
  • Error al inflar la clase <unknown>
  • ¿Fondo vertical-rayado en XML?
  • El uso de referencias de tema en XML drawables requiere el nivel de API 21
  • Título de la acción: Mostrar Título AND Icon
  • Rectángulo dentro de otro rectángulo
  • Botones de radio específicos: la forma más sencilla de configurar diferentes estilos para los botones primero / último
  • Android: Cómo hacer un selector desplegable
  • Establecer el ancho del elemento de Android Drawable?
  • Mejor asignación de imágenes de calidad a partir de recursos basados ​​en resolución / densidad
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.