Multilínea TextView

Tengo un TextView que se rellena con un texto que se toma de una base de datos, así que su lenth es indefinido.

He configurado el TextView utilizando el atributo maxline, y he establecido su valor en 3, porque no quiero más de 3 líneas de texto, y también uso el atributo ellipsize.

Pero no funciona correctamente. Aunque el texto es mayor que 3 líneas, sólo imprime dos líneas.

<TextView android:id="@+id/etLugar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/tvLugar" android:layout_marginLeft="15dp" android:layout_toRightOf="@+id/tvLugar" android:text="A very large text than must be shown in the textview, but no more of three lines are going to be shown" android:textColor="@color/foreground1" android:maxLines="3" android:ellipsize="end" android:textSize="12dp" /> 

No entiendo por qué el atributo maxlines es que no funciona correctamente. ¿Qué estoy haciendo mal?

Gracias

Supongo que se debe a android:singleLine="false" que es el valor por defecto intentar y cambiar a TRUE decir si funciona.

Hay la misma pregunta Android ellipsize texto multilínea . Este es un error conocido, bastante antiguo y no arreglado todavía.

Alguien ha publicado la solución alternativa Android Textview Multiline Ellipse / tal vez le ayudará (o alguien más).

Debido a que tiene menos contenido que tiene dos líneas sólo, fue perfectamente el trabajo que escribió código (xml) introducir más contenido en la cadena y luego intentarlo.

imagen Introduzca aquí la descripción de la imagen

Estoy teniendo un problema similar con 2 TextView, se supone que uno tiene maxLines = "2" y el otro maxLines = "4".

El primero estaba siempre en una sola línea, independientemente del ajuste de elipse que agregué. ¡El segundo no importaba y el texto estaba usando tantas líneas que necesitaba!

Parece que depende de dos factores:

  1. Los otros elementos de su diseño
  2. El parámetro textAppearance if set puede romper / anular este ajuste o una opción singleLine

Para solucionar esto agregué código para hacerlo directamente en las vistas de texto:

 tv1.setMaxLines(2); tv2.setMaxLines(4); 

Y eso hizo el truco.

No utilice el atributo ellipsize , solo android:maxlines="3" debería funcionar.

  • Tener una vista en torno a otra vista
  • ¿Cómo hacer que el texto se mueva de izquierda a derecha en Android?
  • El identificador de recursos no puede ser una cadena vacía (en 'texto' con valor '?') En el atributo textAppearance
  • Cambiar el texto de TextView
  • Android: matriz de vistas de texto
  • Android textview - no puedo conseguir que va
  • Cómo eliminar las líneas antiguas de un TextView
  • Cómo obtener texto de textview
  • Tamaño de texto de Android por programa demasiado grande
  • Android: TextView automáticamente truncar y reemplazar los últimos 3 caracteres de String
  • ¿Qué es (s / g) etFreezesText en TextView?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.