在实际项目中有一张关于回复的设计图如下:
里面文本颜色是有变化的,因此封装一个修改TextView中部分文字颜色的方法,如下:
public static SpannableStringBuilder getSpannable(String reply, String content, int colorID) { SpannableStringBuilder builder = new SpannableStringBuilder(reply).append(content); CharacterStyle characterStyle = new ForegroundColorSpan(colorID); builder.setSpan(characterStyle, 0, reply.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); return builder; }主要是用到SpannableStringBuilder 这个类.实现上面设计图的效果在Activity里进行调用代码如下:
TextView textView= (TextView) findViewById(R.id.textView);textView.setText(getSpannable("回复 隔壁家没有老王:","没有摇到题啊没有摇到题啊没有摇到题啊没有摇到题啊没有摇到题啊", Color.YELLOW));