美文网首页
同一个TextView不同颜色,不同大小的设置

同一个TextView不同颜色,不同大小的设置

作者: YbSTGing | 来源:发表于2017-11-16 15:39 被阅读445次

    在项目中,如果想要达到下面的这种效果,一般都是设置一个TextView,将里面的字体设置不同大小。


    image.png

    PS: 如果想要将上图中的文字变成居中对齐就麻烦了,貌似需要自定义span

            TextView test = (TextView) findViewById(R.id.tv3);
            SpannableStringBuilder spannable = new SpannableStringBuilder(test.getText().toString());
            //设置字体颜色为红色
            ForegroundColorSpan good_red = new ForegroundColorSpan(getResources().getColor(R.color.goods_red));
            //设置字体颜色为灰色
            ForegroundColorSpan good_gray = new ForegroundColorSpan(getResources().getColor(R.color.col909090));
            //改变第0-3个字体颜色
            spannable.setSpan(good_red, 0, 4, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
            //改变第4-之后所有的字体颜色(这里一定要注意范围,否则会造成越界)
            spannable.setSpan(good_gray, 4, test.length() - 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
            //改变第0个字体大小
            spannable.setSpan(new AbsoluteSizeSpan(40), 0, 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
            //改变第1-第3个字体大小
            spannable.setSpan(new AbsoluteSizeSpan(70), 1, 4, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
            //改变第4-所有字体大小
            spannable.setSpan(new AbsoluteSizeSpan(40), 4, test.length() - 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
    
            test.setText(spannable);
    
    

    上面设置的flag的区别:


    image.png

    相关文章

      网友评论

          本文标题:同一个TextView不同颜色,不同大小的设置

          本文链接:https://www.haomeiwen.com/subject/tlglvxtx.html