2 xiaoyan 12 xiaoyan_12 于 2012.11.23 14:03 提问

如何给TextView的部分文本添加颜色

我想改变textview中某些文字的颜色。例如,搜索结果的颜色。
我试图使用 ANSI 颜色控件:

text.setText("\u001B31;1m" + "someText");

但是没有实现所要的功能。谁有好的建议呢?

2个回答

LiDaming_and
LiDaming_and   2012.11.23 14:38
已采纳

这段代码可能帮的上你:

 Spannable WordtoSpan = new SpannableString("I know just how to whisper");        
        WordtoSpan.setSpan(new ForegroundColorSpan(Color.BLUE), 5, 13, 
                                                   Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
        tv.setText(WordtoSpan);
// 5, 13,是字符的长度
huweilong1030
huweilong1030   2012.11.23 14:23

可以用Html.fromHtml这个功能,来给文本添加样式,如下:

tv.setText(Html.fromHtml("红色其它颜色"));

把搜索的结果处理一下,前后加上样式标签即可,看看合不合你的要求。

huweilong1030
huweilong1030 tv.setText(Html.fromHtml("<font color=\"#ff0000\">红色</font>其它颜色"));
大约 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!