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()方法實作字元串拼接。