2015-10-13 55 views
7

我有一些文本有多個段落(使用「\ n」),並且希望在段落之間放一段空格,但不要使用「\ n \ n」。但是同一段文字我想讓它們保持較低的空間。如何增加textview中段落的間距

我試過使用lineSpacingExtralineSpacingMultiplier,但它爲每一行設置了空格(也在該段落內)。

我想是這樣的:

Multiparagraph padding

+0

如果您希望對段落之間的空間進行更多的控制,最好將第二段放在另一個TextView中,並使用邊距和填充將它們間隔開。 – NoChinDeluxe

+0

問題是我不知道有多少段落會有文字。我想知道是否有更簡單的方法來添加空格而不添加文字視圖與它們之間的邊距 –

+0

那麼您在問題中張貼的圖像就是您應該用'\ n \ n'獲得的圖像。所以如果你沒有得到那個,那麼別的東西就是錯的。 – NoChinDeluxe

回答

1

您可以使用

Html.fromHtml(String); 

這將幫助你以HTML的形式寫入字符串,你可以使用HTML標籤,如<p><h1>

例如:

myTextView.setText(Html.fromHtml("<p>This is it first<br>paragraph.</p><p>This is the second<br>paragraph.</p>")); 
2

您可以使用Spannable爲實現這一點:

String formattedText = text.replaceAll("\n", "\n\n"); 
SpannableString spannableString = new SpannableString(formattedText); 

Matcher matcher = Pattern.compile("\n\n").matcher(formattedText); 
while (matcher.find()) { 
    spannableString.setSpan(new AbsoluteSizeSpan(25, true), matcher.start() + 1, matcher.end(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 
} 

上面的代碼替換所有行有兩個換行符打破。之後,它爲每個第二個換行符設置絕對大小。