目录

一、使用HTML 、strings.xml 辅助完成

二、SpannableStringBuilder 来实现

我们都会遇到UI给的效果图中,一段文字,却用不同的颜色显示关键字以突出重点。我们平常用到都是使用TextView设置textColor就可以了,如何设置多种颜色呢,有两种方法:

比如说我们想要实现以下效果的一段文字:
        1、天气不错,适合露营
        2、这里有一条河流,也可以去钓鱼

我们可以把这段文字分成4个部分,分别是 “1、天气不错,适合”,“露营”,“2、这里有一条河流,也可以去”,“钓鱼”

一、使用HTML 、strings.xml 辅助完成

1、首先在 strings.xml 文件中添加:

<string name="black_red"><Data><![CDATA[<font color="#000000">%1$s</font><font color="#ff0000">%2$s</font><font color="#000000">%3$s</font><font color="#ff0000">%4$s</font>]]></Data></string>

2、在Activity中给需要设置多种颜色的TextView设置如下代码:

textView.setText(Html.fromHtml(context.getResources().getString(R.string.black_red,“1、天气不错,适合”,“露营<br>”,“2、这里有一条河流,也可以去”,“钓鱼”)));

注:<br> 只是用来换行

二、SpannableStringBuilder 来实现

首先,需要把这段文字声明成一个字符串:

String content= "1、天气不错,适合露营\n2、这里有一条河流,也可以去钓鱼"

注:\n 只是用来换行

SpannableStringBuilder builder=new SpannableStringBuilder(content);ForegroundColorSpan buleSpan1 = new ForegroundColorSpan(Color.parseColor("#ff0000"));ForegroundColorSpan buleSpan2 = new ForegroundColorSpan(Color.parseColor("#ff0000"));
/**
*  start:需要替换颜色的字符串的起始位置(从0开始)  end:结束位置
*/builder.setSpan(buleSpan1, 9, 10, Spannable.SPAN_INCLUSIVE_INCLUSIVE);builder.setSpan(buleSpan2, 26, 27, Spannable.SPAN_INCLUSIVE_INCLUSIVE);

注:始末下表数的填写和 Spannable.SPAN_INCLUSIVE_INCLUSIVE 有关,可以选择是否包含这两个下标的字符。

android 中一段文字设置不同颜色相关推荐

  1. php文字红色代码,IOS_IOS中一段文字设置多种字体颜色代码,给定range和需要设置的颜色, - phpStudy...

    IOS中一段文字设置多种字体颜色代码 给定range和需要设置的颜色,就可以给一段文字设置多种不同的字体颜色,使用方法如下: [self fuwenbenLabel:contentLabel Font ...

  2. html同一段文字设置不同颜色字体,CSS设置一个文字两种颜色

    CSS设置一个文字两种颜色属于前端实例代码,有关更多实例代码大家可以查看. CSS可以将一个文字设置为两种颜色,下面介绍一下如何实现此效果. 代码实例如下: 犀牛前端部落 .antzone{ disp ...

  3. 给一段文字设置多种颜色

    在移动端开发过程中,有时候需要对一段文字设置不同的颜色,这时候就用到了html语法,然后用Html.fromHtml(str)转换,下面给出具体实例. str += "<font co ...

  4. android 颜色资源文件,android中colors.xml颜色设置资源文件的方法

    1. 打开res目录下的values文件夹,双击打开colors.xml文件进行编辑 上代码 #008577 #00574B #D81B60 #ff0000 #0000ff 2. 在res目录下的la ...

  5. android 手机震动1次,Android中手机震动的设置(Vibrator)的步骤

    Android中手机震动的设置(Vibrator)的步骤: a.通过系统服务获得手机震动服务,Vibrator vibrator = (Vibrator)getSystemService(VIBRAT ...

  6. Android中闹铃的设置

    Android中闹铃的设置 在安卓中真正涉及到闹铃设备的类为AlarmManager类,而所谓的设备闹铃其实就是在用户设置一个指定的时间点到来的时候通过一种手段给系统发送一个自动跳转的广播,跳转之后在 ...

  7. android 中color目录,android中colors.xml颜色设置资源文件的方法

    1. 打开res目录下的values文件夹,双击打开colors.xml文件进行编辑 上代码 #008577 #00574B #D81B60 #ff0000 #0000ff 2. 在res目录下的la ...

  8. Android中Textview文字设置不同颜色、下划线、加粗、超链接

    在项目中会遇到在一行文字,部分需要不同的文字颜色.下划线以及超链接来展示,下面介绍两种方式实现: 1.SpannableString来实现 1)简介 对于给Textview设置不同颜色,就不得不提Sp ...

  9. android实现一段文字中不同颜色

    相信大多程序员都会遇到UI给的效果图中,一段文字,却用不同的颜色显示关键字以突出重点.我们平常用到都是使用TextView设置textColor就可以了,如何设置多种颜色呢,有两种方法: 使用HTML ...

最新文章

  1. 包r语言_R语言代码共享:制作R包
  2. 编程方法学11:Gimage
  3. 32位linux运行64位jdk,linux64位操作系统装32位jdk解决方法
  4. ICLR 2021 | 美团、上交大等:鲁棒的可微分神经网络搜索DARTS-
  5. Java中集合的自定义运算符
  6. Oracle 自定义函数、存储过程
  7. 第十五章:进程间通信
  8. 一起谈.NET技术,HTML5 - 搭建移动Web应用
  9. 数据库系统异常排查之DMV(转)
  10. 『Python动手学』PyQt5入门教程
  11. WebClient Exceeded limit on max bytes to buffer : 262144 异常解决
  12. GCC详解-Binutils工具之c++filt
  13. c语言程序函数由什么两部分组成,C语言中一个函数由函数首部和_____两部分组成. 答案:函数体...
  14. 基于单片机的液体点滴速度监控设计
  15. 交换机用户模式、特权模式、全局模式、端口模式
  16. 基于微信小程序的健康管理系统-计算机毕业设计
  17. 计算机视觉---opencv人脸识别
  18. 麦克风产品 麦克风元器件 市场调研
  19. 三角Puzzle受力分析
  20. vim插件——YouCompleteMe

热门文章

  1. 关于遇到的android用eclipse识别不了bluestacks模拟器的解决方案,重启adb也不成功
  2. java程序员如何评价python_有Java基础的程序员,是如何看待Python这位少女的?
  3. 【引用】净空法师教你如何将家过的兴旺~~~值得一看~~~
  4. Android camera系列:DNG格式
  5. js正则表达式大全(转)
  6. Redis 数据类型与使用命令大全以及Java使用
  7. H3C云实验室模拟器
  8. 终于找到一款神器,竟然可以让SpringBoot 不再需要Controller、Service、DAO、Mapper!...
  9. 热词挖掘、热度值计算方法及python实现
  10. Rabbitmq集成与使用