在一个TextView Android多色彩

可能重复:
是否有可能在一个TextView中有多个样式?

我希望我的TextView以红色显示其文本的一部分,其他部分以黑色显示。 它的内容(文本)是dynamic创build的,我不知道有多less单词会变成红色。

有没有什么办法做到这一点,如在HTML – CSS?

你可以使用Spannable来实现你想要的。

String text = "This is <font color='red'>red</font>. This is <font color='blue'>blue</font>."; textView.setText(Html.fromHtml(text), TextView.BufferType.SPANNABLE); 

试试这个方法

  TextView tv = (TextView)findViewById(R.id.tv); Spannable wordtoSpan = new SpannableString("I know just how to whisper, And I know just how to cry,I know just where to find the answers"); wordtoSpan.setSpan(new ForegroundColorSpan(Color.BLUE), 15, 30, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); wordtoSpan.setSpan(new ForegroundColorSpan(Color.RED), 5, 10, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); tv.setText(wordtoSpan); 

你基本上想要的是SpannableString

完整的例子看这个 :