index[1] = text4.indexOf("30");
index[2] = text4.indexOf("雷雨大风");
SpannableStringBuilder style2 = new SpannableStringBuilder(text4);
style2.setSpan(new ForegroundColorSpan(Color.RED), index[0], index[0] + 2, Spannable.SPAN_EXCLUSIVE_INCLUSIVE);
style2.setSpan(new ForegroundColorSpan(Color.GREEN), index[1], index[1] + 2, Spannable.SPAN_EXCLUSIVE_INCLUSIVE);
style2.setSpan(new BackgroundColorSpan(Color.YELLOW), index[2], index[2] + 3,
Spannable.SPAN_EXCLUSIVE_INCLUSIVE);
textView4.setText(style2);
贴上全部代码供大家参考:
public class TextViewColor extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.textview_color);
//改变字体颜色
//方法一:
TextView textView1 = (TextView) findViewById(R.id.text1);
textView1.setText(Html.fromHtml("红色其它颜色"));
//方法二:
TextView textView2 = (TextView) findViewById(R.id.text2);
String text = "获得银宝箱!";
SpannableStringBuilder style = new SpannableStringBuilder(text);
style.setSpan(new BackgroundColorSpan(Color.RED), 2, 5, Spannable.SPAN_EXCLUSIVE_INCLUSIVE); //设置指定位置文字的背景颜色
style.setSpan(new ForegroundColorSpan(Color.RED), 0, 2, Spannable.SPAN_EXCLUSIVE_INCLUSIVE); //设置指定位置文字的颜色
textView2.setText(style);