我有一个TextView,其中包含一个Spannable字符串。该字符串包含一堆文本,第一个单词的字体大小是其余字符串的两倍。
问题在于,由于第一个单词的增加大小,第一行和第二行之间的行距比随后的行之间的行距要大得多。
http://img.skitch.com/20100615-fwd2aehbsgaby8s2s9psx3wwii.png
以下代码片段创建了Spannable字符串:
// Price
CharSequence text = "$30 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
final Pattern priceRegex = Pattern.compile("^(.[0-9]+)\\s.*");
final Matcher m = priceRegex.matcher(text!=null ? text : "");
if( m.matches() ) {
text = new SpannableString(text);
((SpannableString)text).setSpan(new RelativeSizeSpan(2), 0, m.end(1), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
}
如何修复我的 TextView,使得所有行之间的间距相同?
android:lineSpacingMultiplier
仅适用于 API 级别 16 及以上版本。 - yiatisetLineSpacing()
和android:lineSpacingMultiplier
从API级别1开始可用。方法getLineSpacing()
从API级别16开始可用。 您可以参考此链接:http://developer.android.com/reference/android/widget/TextView.html#attr_android:lineSpacingMultiplier - Nhat Dinh