Android TextView relleno entre líneas


217

Tengo un TextView que muestra un texto largo. Quiero dar algo de espacio entre líneas como en CSS con la propiedad de altura de línea. ¿Cómo puedo hacerlo?

Respuestas:


407

Puede usar lineSpacingExtray lineSpacingMultiplieren su archivo XML.


13
lineSpacingMultiplier funciona para mí con valores flotantes como: android: lineSpacingMultiplier = "0.8"
Juan Saravia

77
¿Puedes explicar cómo funcionan? ¿De dónde se toman estas medidas? ¿Puedes dar ejemplos con relación a la fuente y también al idioma? Por ejemplo, el espaciado entre líneas se mide desde la línea de base, pero el idioma del este asiático no tiene línea de base. ¿Dónde se define el espaciado de línea predeterminado? ¿Está en la fuente misma?
Christopher Perry el

Por ejemplo: android: lineSpacingExtra = "2dp"
nibbana


73

Si desea rellenar entre texto intente LineSpacingExtra="10dp"

<TextView
        android:layout_width="match_parent"
        android:layout_height="180dp"
        android:lineSpacingExtra="10dp"/>

29

Esta respuesta complementaria muestra el efecto de cambiar el espacio entre líneas.

ingrese la descripción de la imagen aquí

Puede configurar el multiplicador y / o el espaciado adicional con

textView.setLineSpacing(float add, float mult)

O puede obtener los valores con

int lineHeight = textView.getLineHeight();
float add = tvSampleText.getLineSpacingExtra();          // API 16+
float mult = tvSampleText.getLineSpacingMultiplier();    // API 16+

donde esta la formula

lineHeight = fontMetricsLineHeight * mult + add

El multiplicador predeterminado es 1y el espaciado adicional predeterminado es 0.



14

Agregar android:lineSpacingMultiplier="0.8"puede hacer que el espaciado entre líneas sea del 80%.


4

La solución es simple. Simplemente use estos dos atributos en su TextView, lineSpacingExtraylineSpacingMultiplier

Por ejemplo,

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:lineSpacingMultiplier="1.5"
    android:lineSpacingExtra="5dp"/>
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.