本帖最后由 liu 于 2018-12-22 11:18 编辑  
 
 
 
开发中有的时候会遇到一行字显示了两种颜色,通过布局设置比较麻烦,我们就需要来了解下怎么使用java代码进行设置 
 
两种方法: 
 
第一种: 
 
[Java] 纯文本查看 复制代码  String str = "大家好,欢迎大家加入苏飞论坛";
        TextView tv = (TextView) findViewById(R.id.tv);
        SpannableStringBuilder builder = new SpannableStringBuilder(str);
        //ForegroundColorSpan为文字前景色
        ForegroundColorSpan foregroundColorSpan = new ForegroundColorSpan(Color.RED);
        /**
         *第一个参数     设置的span类型(颜色粗细等)
         *第二个参数     开的索引,从0开始
         *第三个参数     span结束的索引
         *第四个参数     是否作用于span范围前后新增的字符
         */
        builder.setSpan(foregroundColorSpan, 10, 14, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
        tv.setText(builder); 
 
效果如下图: 
 
        
 
   
 
 
第二种: 
 
[Java] 纯文本查看 复制代码    String str = "大家好,欢迎大家加入" + "<font color='#fff000'>" + "苏飞论坛" + "</font>";
        TextView tv = (TextView) findViewById(R.id.tv);
        tv.setText(Html.fromHtml(str)); 
 
效果如下图: 
 
        
 
 
 |