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

xiaoxiao2021-02-28  73

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

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

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

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

//设置前景色span spannableString.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>

转载请注明原文地址: https://www.6miu.com/read-96366.html

最新回复(0)