As the question indicates, I am working on a TextView
which will show formatted text using SpannableStringBuilder
. It has multiple paragraphs and I
Implement the LineHeightSpan
and override chooseHeight
method as follows
@Override
public void chooseHeight(CharSequence text, int start, int end,
int spanstartv, int v, FontMetricsInt fm) {
Spanned spanned = (Spanned) text;
int st = spanned.getSpanStart(this);
int en = spanned.getSpanEnd(this);
if (start == st) {
fm.ascent -= TOP_SPACING;
fm.top -= TOP_SPACING;
}
if (end == en) {
fm.descent += BOTTOM_SPACING;
fm.bottom += BOTTOM_SPACING;
}
}
Don't forget to add \n
at the end of your each paragraph text.