在一个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
完整的例子看这个 :