Android String字符串中包含的某个或某串特定字符串改变颜色

一个String要改变颜色,众所周知需要用到SpannbleStringBuilder,它能改变某个字符到某个字符的位置之间的字符串颜色,比如:

“111121111”

可以变成

“111121111

这很简单,但是如果是这种情况呢,要把“1223121231321234”中的“231”和“12”改变颜色,这就很难受了,解决方案如下:

public void changeText(String context,List tag){ //context 长字符串  tag 要改变颜色的字符串的集合
if(!TextUntils.isEmpty(cotext) && !ListUntil.isEmpty(tag)){
       SpannableStringBuilder s=new SpannableStringBuilder(contex);
       for(String s1: tag){
          for(int i=0;i 
  

这里String的regionMathces方法,返回的是一个boolean值,当找到目标字符串的时候返回true,长字符pian偏移量表示是从第几个字符开始查找,查找字符偏移量,表示查找到字符的第几个字符时返回结果。

 

你可能感兴趣的:(新手爬坑系列)