SpanableString可以对String处理来实现绚丽的文本效果,下面介绍一下使用方法。
一、通过构造方法传入要处理的字符串,如 SpannableString ss = new SpannableString("我是要处理的字符串");
二、通过setSpan(Object what, int start, in end, int flags)设置效果。what表示设置格式;start表示字符串起始设置的下标;end表示终止下标;flags表示起始终止下标的属性
1、flag属性介绍:
Spanned.SPAN_INCLUSIVE_EXCLUSIVE:从起始下标到终止下标,包括起始下标但不包括终止下标
Spanned.SPAN_INCLUSIVE_INCLUSIVE:从起始下标到终止下标,同时包括起始和终止下标
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE:从起始下标到终止下标,不包括起始和终止下标
Spanned.SPAN_EXCLUSIVE_INCLUSIVE:从起始下标到终止下标,不包括起始下标但包括终止下标
2、what属性介绍
ForegroundColorSpan:设置文本颜色
BackgroundColorSpan:设置文字背景色
RelativeSizeSpan:设置文字相对大小
StrikethtoughSpan:设置文本中划线
UnderlineSpan:设置文本下划线
SuperscriptSpan:设置上标
SubscriptSpan:设置下标
StyleSpan:设置字体风格(粗体Typeface.BOLD、斜体Typeface.ITALIC)
ImageSpan:设置文本图片(构造方法传入Drawable对象)
ClickableSpan:设置可点击文本
URLSpan:设置超链接文本
MaskFilterSpan:设置模糊和浮雕效果
RasterizerSpan:设置光栅效果
最后介绍SpannableStringBuilder,和StringBuilder类似都是使用append()方法实现字符串拼接。