这里举一个UnderlineSpan的例子,目的是让一段文本中的某几个字颜色为蓝色,去掉下划线,并具有点击事件。
但是一下代码运行后,只看到ClickableSpan的效果,文本没有显示成蓝色,也没有去掉下划线。经反复尝试,终于摸索出规律,问题就出现在下图红框圈住的地方。这个地方在设置setSpan的时候,先设置了UnderlineSpan,然后设置了ClikableSpan,这时候ClikableSpan就把的UnderlineSpan覆盖了。
解决方法:只需要调换一下两者位置,setSpan时先设置ClikableSpan,然后再这设置其它Span,就可以同时生效。
修改后: