Hacer texto flotante-derecha en Android

Estoy tratando de lograr algún diseño de texto en Android un poco como float="right" en HTML. Tengo dos elementos de texto para ir en un área determinada de mi pantalla. Me gustaría que uno de ellos fuera alineado a la izquierda en un TextView, y uno de ellos para ser alineado a la derecha, como este (donde el | en cada extremo representan el contenedor encerrando): –

 | First text item label | 

Hasta ahora esto suena fácil: podría hacerlo con dos TextView s en un RelativeLayout , el de la derecha un set a layout_alignParentRight="true" o layout_gravity="right" . Pero también existe el caso en el que el texto de la izquierda es demasiado largo para caber en el espacio restante. Con un RelativeLayout se superpondría el texto de la derecha, pero quiero que se divida en dos líneas en este caso: –

 | This text is way too long | | label | 

Y de manera similar, si el texto de la izquierda fluye en varias líneas, quiero que el texto de la derecha se ajuste a la misma línea si es posible:

 | This text doesn't fit on | | one line label | 

Debido a que View s en Android son siempre rectangulares, parece que sería imposible hacer que este último ejemplo funcione con dos TextView , incluso si escribí un Layout personalizado. Miré en usar un Spannable para dejarme poner todo el texto en un TextView , pero de nuevo, AlignmentSpan es un ParagraphStyle , así que no parece que podrá poner la etiqueta en la misma línea que la izquierda Texto de esa manera. ¿Hay algún otro tipo de extensión de texto que pueda utilizar para lograr esto, o incluso un método completamente diferente?

Por el momento, parece que tendré que poner el texto en HTML y usar un WebView (no es genial, ya que la vista es ir en un elemento de lista), o escribir un widget personalizado como TextView .

Añadir android:gravity="right" (no es lo mismo que layout_gravity ) a la derecha, sino también añadir android:layout_alignBottom y referirse a id de la otra vista de texto. Multiline a verdadero etc Supongo que ya tienes. Mantenga alignParentRight y alignParentLeft respectivamente.

Para ser claros, mientras que son rectangulares pueden todavía solaparse si usted quiere, usando RelativeLayout (o FrameLayout etc)

De manera alternativa, pruebe esto: swap android:layout_alignBottom="@id..." con android:layout_alignParentBottom="true" para la vista de texto del lado derecho .

Obtener el tercer ejemplo y el segundo ejemplo para trabajar al mismo tiempo aunque con un RelativeLayout simple, hmm …

  • Obtener posición absoluta para un desplazamiento dado en TextView (Android)
  • En Android cómo obtener el ancho de la vista de texto que se establece en Wrap_Content
  • ¿Cómo obtener coordenadas de un ClickableSpan dentro de un TextView?
  • GetDimension () / getDimensionPixelSize () - problema mutliplier
  • Cómo agregar una ruptura de línea en un Android TextView?
  • Animación de texto de pantalla de personaje de Android por caracteres
  • Texto con formas en recurso dibujable
  • ¿Estableciendo el subíndice y el superíndice para el carácter específico en el TextView?
  • Cómo eliminar el margen superior de TextView?
  • Cómo ajustar el kerning de texto en Android TextView?
  • No se puede establecer la sombra de TextView mediante programación
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.