我想将多个跨度添加到带有可配置行距的textview。我使用android中定义的LineHeightSpan类。但现在看来,这行为不同版本的Android M和更低版本 在这里,结果在Android的Android M及更低版本中的LineHeightSpan
的低版本,这是它看起来像在版本的Android M
下面是我在代码实现: 这是我实现LineHeightSpan的:
public class VerticalMarginSpan implements LineHeightSpan {
private final int value;
public VerticalMarginSpan(int value) {
this.value = value;
}
@Override
public void chooseHeight(CharSequence text, int start, int end, int spanstartv, int v,
Paint.FontMetricsInt fm) {
fm.ascent -= value/2;
fm.descent += (value/2);
}
}
我如何使用它:
SpannableStringBuilder builder = new SpannableStringBuilder(tempStr);
builder.setSpan(
new VerticalMarginSpan(lineSpace),
0,
tempStr.length(),
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
txt.setText(builder);
我该如何解决这个问题?
2016-07-23
Hojjat