2

可能重复:
在 XML 中定义的 TextView 中的不同颜色

这可能是一个非常愚蠢的问题,但我无法弄清楚。我想要做的是改变字符串中文本的颜色,比如:“嗨,你好吗”+colorRed“你?”

^ 试图将“你”这个词改成红色。

4

3 回答 3

4

我知道的最简单的方法就是使用 html。

String color = "Hi, how are <font color='#EE0000'>you</font>";
**YOUR_TEXTVIEW**.setText(Html.fromHtml(color));

有关更多详细信息,请参阅此

于 2012-11-22T05:51:47.487 回答
2
String s = "Hi, how are <font color='red'>you</font>?";
textView.setText(Html.fromHtml(s), TextView.BufferType.SPANNABLE);
于 2012-11-21T21:33:39.750 回答
0

我认为最好(且耗时更少)的方法是 - 使用Spannable。例如:

final String text = "Hi, how are ";
final Spannable spanYou = new SpannableString("you");
spanYou.setSpan(new ForegroundColorSpan(Color.RED), 0, spanYou.length, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.setText(text);
textView.append(spanYou);

Html.fromHtml()首先将您的文本解析为 html,然后使用 Spannable。

于 2012-11-22T06:13:04.600 回答