tv1=findViewById(R.id.tv1);
        tv2=findViewById(R.id.tv2);

        //SpannableString文本类,包含不可变的文本但可以用已有对象替换和分离。

        ss =new SpannableString("同一个Textview设置不同颜色的效果");
//        new ImageSpan(drawable, ImageSpan.ALIGN_BASELINE);
//前景效果
        ss.setSpan(new ForegroundColorSpan(Color.BLUE),3,11, Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
// 下划线效果
        ss.setSpan(new UnderlineSpan(), 18, 20, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
// 字体效果
        ss.setSpan(new StyleSpan(Typeface.BOLD), 15, 17, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
//    超链接
        ss.setSpan(new URLSpan("http://www.baidu.com"),3,11, Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
//     背景
        ss.setSpan(new BackgroundColorSpan(Color.GREEN),3,11, Spanned.SPAN_INCLUSIVE_EXCLUSIVE);

        //获取Drawable资源
//        Drawable d = getResources().getDrawable(R.drawable.ic_launcher_background);
//        d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight());
//        //创建ImageSpan
//        ImageSpan span = new ImageSpan(d, ImageSpan.ALIGN_BASELINE);
//        //用ImageSpan替换文本
//        ss.setSpan(span, 18, 20, Spanned.SPAN_INCLUSIVE_EXCLUSIVE);

        tv1.setText(ss);

//设置字体为(big会加大字号,font可以定义颜色,u下划线 <a href="www.baidu.com"></a>)
        tv2.setText(Html.fromHtml("同一个<a href=\"www.baidu.com\"><font color=\'#FF5D5A\'>Textview</font></a>设置不同<b>颜色</b>的<u>效果</u>"),null);


同一个Textview设置不同颜色等效果

相关文章:

  • 2021-07-15
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-04-27
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-01-21
  • 2021-07-16
  • 2021-06-12
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案