Preenchimento do Android TextView entre linhas

217

Eu tenho um TextView que exibe um texto longo. Eu quero dar algum espaço entre as linhas, como no CSS, com a propriedade line-height. Como eu posso fazer isso?

Çağatay Gürtürk
fonte

Respostas:

407

Você pode usar lineSpacingExtrae lineSpacingMultiplierno seu arquivo XML.

Romain Guy
fonte
13
obras lineSpacingMultiplier para mim com valores flutuar como: android: lineSpacingMultiplier = "0.8"
Juan Saravia
7
Você pode explicar como isso funciona? De onde são tiradas essas medições? Você pode dar exemplos em relação à fonte e também ao idioma? Por exemplo, o espaçamento entre linhas é medido a partir da linha de base, mas o idioma do Leste Asiático não tem linha de base. Onde é definido o espaçamento de linha padrão? Está na própria fonte?
Christopher Perry
Por exemplo: android: lineSpacingExtra = "2dp"
nibbana
73

Se você quiser preenchimento entre texto, tente LineSpacingExtra="10dp"

<TextView
        android:layout_width="match_parent"
        android:layout_height="180dp"
        android:lineSpacingExtra="10dp"/>
chanu panwar
fonte
29

Esta resposta suplementar mostra o efeito de alterar o espaçamento entre linhas.

insira a descrição da imagem aqui

Você pode definir o multiplicador e / ou espaçamento extra com

textView.setLineSpacing(float add, float mult)

Ou você pode obter os valores com

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

onde a fórmula é

lineHeight = fontMetricsLineHeight * mult + add

O multiplicador padrão é 1e o espaçamento extra padrão é 0.

Suragch
fonte
17

Você pode usar a TextView.setLineSpacing(n,m)função

Vishnu Haridas
fonte
14

A adição android:lineSpacingMultiplier="0.8"pode aumentar o espaçamento entre linhas em 80%.

Ajitsen
fonte
4

A solução é simples. Basta usar estes dois atributos no seu TextView, lineSpacingExtraelineSpacingMultiplier

Por exemplo,

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:lineSpacingMultiplier="1.5"
    android:lineSpacingExtra="5dp"/>
Pouria Hemati
fonte