修改部分字体颜色各位同学都知道可以使用SpannableStringBuilder,其实我们可以还有别的简单方式配合Html.fromHtml()
方案一:用SpannableStringBuilder
为指定的区间[1,4)设置指定的颜色
ssb = new SpannableStringBuilder("为指定的区间[1,4)设置指定的颜色");
ssb.setSpan(new ForegroundColorSpan(Color.GREEN),1,4, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
ssb = new SpannableStringBuilder("为指定的区间[1,4)设置指定的颜色");
ssb.setSpan(new ForegroundColorSpan(Color.GREEN),1,4, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
效果是这样的
方案二:配合Html.fromHtml()也可以达到这样效果,使用方式如下:
String文件:
<string name="app_info"><Data><![CDATA[为<font color="#00ff00">指定的</font>区间[1,4)设置指定的颜色]]></Data></string>
代码中:
TextView mTextView= (TextView) findViewById(R.id.tv);
mTextView.setText(Html.fromHtml(getResources().getString(R.string.app_info)));
不管使用哪种方式,大家需要注意的点要清楚:
1.如果设置了部分字体颜色不需要点击事件可以采用方式2
2.方式2只是显示一个效果,可能在部分奇怪的机型上不兼容
SpannableStringBuilder相关文章 http://blog.csdn.net/qq_33220645/article/details/53332834