SpannableStringBuilder 同时设置setclickspan 和 ForegroundColorSpan出现问题

来源:互联网 发布:工业企业利润数据 编辑:程序博客网 时间:2024/05/20 06:06

借鉴:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0305/2535.html这篇文章

项目最初使用的是SpannableString 进行富文本显示,由于需求新增,需要用SpannableStringBuilder来改变显示的字符串。

这时候用setclickspan 和 ForegroundColorSpan会出现字体颜色不是自己设置的情况。

这种情况应该是:setclickspan会有一个链接颜色将ForegroundColorSpan设置的颜色覆盖了(虽然我先设置的setclickspan)所以换成了TextAppearanceSpan,这个span方法可以设置字体的各种颜色

//设置前景色spanspannableString.setSpan(new TextAppearanceSpan(mEditText.getContext(),R.style.SpecialTextAppearance), matcher.start(), end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

<style name="SpecialTextAppearance" parent="@android:style/TextAppearance">    <item name="android:textColor">@color/comment_matcher</item>    <item name="android:textColorHighlight">@color/comment_matcher</item>    <item name="android:textColorHint">@color/comment_matcher</item>    <item name="android:textColorLink">@color/comment_matcher</item><!--链接颜色!!--></style>


0 0
原创粉丝点击