Ich möchte mehrere Bereiche zu einer Textansicht mit konfigurierbaren Zeilenabstand hinzufügen. Ich verwende die LineHeightSpan-Klasse, die in Android definiert ist. Aber es scheint, es anders in Android M verhalten und niedrigeren Versionen Hier das Ergebnis in niedriger Version von AndroidLineHeightSpan in Android M und niedrigeren Versionen
und dies ist, wie es in Android M sieht
ist hier, wie ich in Code implementiert: Dies ist meine Implementierung von 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);
}
}
Und wie ich es verwenden:
SpannableStringBuilder builder = new SpannableStringBuilder(tempStr);
builder.setSpan(
new VerticalMarginSpan(lineSpace),
0,
tempStr.length(),
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
txt.setText(builder);
Wie kann ich das Problem beheben?
ich dieses Problem in Android M lösen, indem Schrift Hinzufügen Abstand zu Textansicht anstatt LineHeightSpan anzuwenden. Du hast meine Zeit gerettet. Vielen Dank. – Hojjat