/**
* 使用Spannable构造字符串
*/
public static CharSequence createSpannable(CharSequence source,
Pattern pattern, CharacterStyle... styles) {
SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder(source);
Matcher matcher = pattern.matcher(source);
while (matcher.find()) {
int start = matcher.start();
int end = matcher.end();
applyStylesToSpannable(spannableStringBuilder, start, end, styles);
}
return spannableStringBuilder;
}
private static SpannableStringBuilder applyStylesToSpannable(
SpannableStringBuilder source, int start, int end,
CharacterStyle... styles) {
for (CharacterStyle style : styles) {
source.setSpan(CharacterStyle.wrap(style), start, end,
Spanned.SPAN_INCLUSIVE_INCLUSIVE);
}
return source;
}
构造特定格式的字符串
最新推荐文章于 2022-07-18 17:44:24 发布