From ca7b0277d7721e5d531cb6abe3eb980d42891b7b Mon Sep 17 00:00:00 2001 From: Niels Egberts Date: Thu, 10 Jul 2014 14:16:04 +0100 Subject: [PATCH] New convenience method that takes a CharSequence and an Object as the span that is applied to the appended text. Change-Id: Ibdc4a71346e5691bcfe6af23f34beff69d642908 --- api/current.txt | 1 + .../java/android/text/SpannableStringBuilder.java | 15 +++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/api/current.txt b/api/current.txt index 081805587f478..1d3454b452a79 100644 --- a/api/current.txt +++ b/api/current.txt @@ -29465,6 +29465,7 @@ package android.text { ctor public SpannableStringBuilder(java.lang.CharSequence); ctor public SpannableStringBuilder(java.lang.CharSequence, int, int); method public android.text.SpannableStringBuilder append(java.lang.CharSequence); + method public android.text.SpannableStringBuilder append(java.lang.CharSequence, java.lang.Object, int); method public android.text.SpannableStringBuilder append(java.lang.CharSequence, int, int); method public android.text.SpannableStringBuilder append(char); method public char charAt(int); diff --git a/core/java/android/text/SpannableStringBuilder.java b/core/java/android/text/SpannableStringBuilder.java index 6b984d60a0dc6..06df683cebf5f 100644 --- a/core/java/android/text/SpannableStringBuilder.java +++ b/core/java/android/text/SpannableStringBuilder.java @@ -251,6 +251,21 @@ public class SpannableStringBuilder implements CharSequence, GetChars, Spannable return replace(length, length, text, 0, text.length()); } + /** + * Appends the character sequence {@code text} and spans {@code what} over the appended part. + * See {@link Spanned} for an explanation of what the flags mean. + * @param text the character sequence to append. + * @param what the object to be spanned over the appended text. + * @param flags see {@link Spanned}. + * @return this {@code SpannableStringBuilder}. + */ + public SpannableStringBuilder append(CharSequence text, Object what, int flags) { + int start = length(); + append(text); + setSpan(what, start, length(), flags); + return this; + } + // Documentation from interface public SpannableStringBuilder append(CharSequence text, int start, int end) { int length = length();