方式一:使用HTML(以Button为例)
步骤一:布局文件中声明
步骤二:findById
步骤三:
long time = millisUntilFinished / 1000;
String showBtn=""等待" +
("<font color='#FF0000'>"+time+"</font>")
+ "秒自动返回";
btnToast.setTextColor(Color.WHITE);
btnToast.setClickable(false);
btnToast.setText(
Html.fromHtml(showBtn)
);
btnToast.setBackgroundResource(R.drawable.drink_water_toast_shape);
这样就可以实现整体的颜色是白色,而time的颜色是红色的了
方式二:使用SpannableStringBuilder展示出不同的颜色(以EditText为例)
editText = (EditText)findViewById(R.id.edit);
//改变字体颜色
//先构造SpannableString
SpannableString spanString = new SpannableString("欢迎光临我的博客");
//再构造一个改变字体颜色的Span
ForegroundColorSpan span = new ForegroundColorSpan(Color.BLUE);
//将这个Span应用于指定范围的字体
spanString.setSpan(span, 1, 3, Spannable.SPAN_EXCLUSIVE_INCLUSIVE);
//设置给EditText显示出来
editText.setText(spanString);