diff --git a/utilcode/src/main/java/com/blankj/utilcode/util/SpanUtils.java b/utilcode/src/main/java/com/blankj/utilcode/util/SpanUtils.java index 25c5cfff1e1f458fa63aae6aaad0fede1506d158..de7494c788e7d31b83b641299f88f3c2f9fd7c9a 100644 --- a/utilcode/src/main/java/com/blankj/utilcode/util/SpanUtils.java +++ b/utilcode/src/main/java/com/blankj/utilcode/util/SpanUtils.java @@ -135,11 +135,14 @@ public final class SpanUtils { private final int mTypeImage = 1; private final int mTypeSpace = 2; + private CharSequence fontSizeTagCS = "[SpanUtils]"; + public SpanUtils() { mBuilder = new SpannableStringBuilder(); mText = ""; setDefault(); + append(fontSizeTagCS); } private void setDefault() { @@ -178,6 +181,17 @@ public final class SpanUtils { spaceSize = -1; } + /** + * The character used to get the font size (span start with image) + * + * @param fontSizeTagCS The character + * @return the single {@link SpanUtils} instance + */ + public SpanUtils setFontSizeTagCS(CharSequence fontSizeTagCS) { + this.fontSizeTagCS = fontSizeTagCS; + return this; + } + /** * Set the span of flag. * @@ -709,7 +723,6 @@ public final class SpanUtils { * @return the single {@link SpanUtils} instance */ public SpanUtils appendImage(@DrawableRes final int resourceId, @Align final int align) { - append(Character.toString((char) 0));// it's important for span start with image apply(mTypeImage); this.imageResourceId = resourceId; this.alignImage = align; @@ -752,7 +765,7 @@ public final class SpanUtils { */ public SpannableStringBuilder create() { applyLast(); - return mBuilder; + return mBuilder.delete(0, fontSizeTagCS.length()); } private void applyLast() {