有没有办法在TextView
中获得Android
的行间距?我尝试找到fontMetrics
的{{1}}的{{1}},并且这样做:
Paint
但是在我更改TextView
的字体大小之前,似乎结果是一样的。那么如何才能获得tv1.getPaint().getFontMetrics(pfm);
float fontTop = pfm.top;
float fontBottom = pfm.bottom;
System.out.println("Line Space >> " + (fontBottom - fontTop));
?
答案 0 :(得分:2)
TextView
的行间距是
textView.getPaint().getFontSpacing() * textView.getLineSpacingMultiplier() + textView.getLineSpacingExtra();
自API 16 +以来,注意getLineSpacingMultiplier()
和getLineSpacingExtra()
方法可用。
答案 1 :(得分:1)
getLineSpacingExtra ()
;获取行间距额外空间
tv1.getLineSpacingExtra ()
textView.setLineSpacing()
或xml,您可以使用android:lineSpacingExtra
来设置额外空间。
答案 2 :(得分:0)
try {
Field mSpacingAddField = TextView.class.getDeclaredField("mSpacingAdd");
Field mSpacingMultField = TextView.class.getDeclaredField("mSpacingMult");
mSpacingAddField.setAccessible(true);
mSpacingMultField.setAccessible(true);
mSpacingAdd = mSpacingAddField.getFloat(textView);
mSpacingMult = mSpacingMultField.getFloat(textView);
} catch (Exception e) {
e.printStackTrace();
}