1、应用场景
如果一行字,需要如下效果:
最差的实现方法是写N个textView,然后分别设置不同的大小、颜色、字体、背景色等等,如果采用spannableString,只需一个textView
2、SpannableString介绍
可以将其理解为可以任意设置字体的string即可
主要方法:public void setSpan(Object what,int start,int end,int flag)
what-样式
start-字符串开始的idx
end-字符串结束的idx
flag-Spannable.SPAN_XXX
这里介绍一下一些常用样式:
①彩色字体(前景色/文本色)ForegroundColorSpan
②特定字体StyleSpan
③超链接URLSpan
④彩色背景BackgroundColorSpan
⑤删除线StrikethroughSpan
⑥下划线UnderlinSpan
⑦下标SubscriptSpan
⑧上标SuperscriptSpan
示范:
xml:
<Resources> <string android:name="test_span">彩色粗体斜体http://www.cnblogs.com删除线下划线下标上标</string> </Resources>
code: