【发布时间】:2012-11-21 20:49:37
【问题描述】:
这可能是一个非常愚蠢的问题,但我无法弄清楚。 我想要做的是更改字符串中文本的颜色,如下所示: “嗨,”+colorRed“你好吗?”
^ 试图将“你”这个词改成红色。
【问题讨论】:
-
同意@Pearsonartphoto - 请注意,并非所有视图都支持这一点。
这可能是一个非常愚蠢的问题,但我无法弄清楚。 我想要做的是更改字符串中文本的颜色,如下所示: “嗨,”+colorRed“你好吗?”
^ 试图将“你”这个词改成红色。
【问题讨论】:
我知道的最简单的方法就是使用 html。
String color = "Hi, how are <font color='#EE0000'>you</font>";
**YOUR_TEXTVIEW**.setText(Html.fromHtml(color));
【讨论】:
String s = "Hi, how are <font color='red'>you</font>?";
textView.setText(Html.fromHtml(s), TextView.BufferType.SPANNABLE);
【讨论】:
我认为最好的(而且耗时更少)的方法是 - 使用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。
【讨论】: