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.
- Cómo alinear drawableLeft a la parte superior en lugar de centrarse en Android TextView?
- Cómo leer el archivo de texto en android desde la web?
- Obtener texto seleccionado de TextView
- TextView.setTextSize se comporta anormalmente - Cómo establecer el tamaño de texto de textview dinámicamente para diferentes pantallas
- Recortar TextView en el centro, reservando caracteres finales
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
- Android: ClickableSpan en TextView seleccionable
- Android sdk 18 La gravedad de TextView no funciona verticalmente
- Especificación de "tachado" en una sección de texto TextView
- Cómo colocar textview con x, y posición
- Cómo configurar la parte de la vista de texto se puede hacer clic
- Cómo cambiar el color de fondo de un TextView con un color definido en mi archivo de valores / colors.xml?
- TextView envuelve el texto después de cambiar el tipo de letra
- Cómo mostrar 3 puntos al final del texto en la vista de texto
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
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:
- Los otros elementos de su diseño
- 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.