Burbuja de discurso drawable de Android

He buscado durante días y no puedo encontrar buenas pistas sobre cómo puedo dibujar una burbuja o donde un dibujo 9 imágenes de parche es para utilizar como fondo. Soy un artista terrible – ¿Puede alguien ayudar?

La mejor muestra que he encontrado está aquí en stackoverflow, pero está escrito en el objetivo c

Cómo dibujar una "burbuja de discurso" en un iPhone?

Gracias

Si está creando una pantalla de chat probablemente va a querer implementar una burbuja de voz entrante y una burbuja de voz saliente. He aquí cómo lo hice:

Shape_bg_incoming_bubble.xml

<?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <rotate android:fromDegrees="-45" android:pivotX="0%" android:pivotY="0%" android:toDegrees="0" > <shape android:shape="rectangle" > <solid android:color="@color/primary" /> </shape> </rotate> </item> <item android:left="16dp"> <shape android:shape="rectangle" > <solid android:color="@color/primary" /> <corners android:radius="4dp" /> </shape> </item> </layer-list> 

Shape_bg_outgoing_bubble.xml

 <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <rotate android:fromDegrees="45" android:pivotX="100%" android:pivotY="0%" android:toDegrees="0" > <shape android:shape="rectangle" > <solid android:color="@color/grey_500" /> </shape> </rotate> </item> <item android:right="16dp"> <shape android:shape="rectangle" > <solid android:color="@color/grey_500" /> <corners android:radius="4dp" /> </shape> </item> </layer-list> 

Aquí hay una simple burbuja de discurso dibujable que hice. Con suerte, es empezar en la dirección correcta para alguien. La vista de que este dibujable se utiliza en las necesidades de una altura de al menos 70-80dp y un ancho mínimo similar para mostrar correctamente.

 <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > <item android:top="30dp"> <rotate android:fromDegrees="-45" android:pivotX="0%" android:pivotY="0%" android:toDegrees="0" > <shape android:shape="rectangle" > <solid android:color="#CCC" /> </shape> </rotate> </item> <item android:left="20dp"> <shape android:shape="rectangle" > <solid android:color="#CCC" /> <corners android:radius="5dp" /> </shape> </item> </layer-list> 

Android Drawables dejar mucho que desear en términos de lo utilizable que son para dibujar cualquier cosa incluso un poco complejo.

Usted debe hacer una imagen en algún tipo de editor de imagen y luego crear un parche 9 fuera de ella. Puede configurar el área en la que desea que el contenido esté usando el método de 9 parches. Entonces usted puede tener simplemente un TextView con el fondo fijado a su remiendo 9. Echa un vistazo a una aplicación llamada Bnter en el mercado, utiliza burbujas de discurso para mostrar conversaciones similares a lo que está buscando.

  • ¿Cómo cambiar la vista previa del lanzador de widgets?
  • GlCreateShader y glCreateProgram fallan en android
  • Android GoogleAPIClient - NoClassDefFoundError: com / google / android / gms / interno / zzsa
  • Android: int que en DialogInterface.OnClickListener () es -1
  • Almacenamiento de String en array java
  • El servicio de reproductores de medios de Android no funciona una vez publicado
  • Cómo hacer copias de seguridad de los contactos o sms en la tarjeta SD como archivo .xml o .csv y restaurarlos más tarde
  • Hacer algunas cosas de la interfaz de usuario de Android en un subproceso no UI
  • ¿Cuál es la forma más adecuada de almacenar la configuración de usuario en la aplicación de Android?
  • ¿Dónde almacenar constantes globales en una aplicación de Android?
  • ¿Es "inyectar todo" una mala práctica en Android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.