美文网首页
android String 某一个重复的字符改变颜色

android String 某一个重复的字符改变颜色

作者: AwaitZhang | 来源:发表于2018-07-26 17:27 被阅读154次

转载注明出处:hknishi_zs的文章链接

问题:

一个字符串 :String string="我爱罗爱我爱你哦"; 我想讲爱 字换成一个颜色值显示在我们的textview上面

解决有俩中方式

一、kotlin所写   思路变量得索引

1.如图所示代码如下:

2. 代码如下:

private val integers = ArrayList()

private fun searchAllIndex(content: String?, chars: String): List? {

    if (null != content && content.length!! > 0) {

        var a = content.indexOf(chars)//*第一个出现的索引位置

        while (a != -1) {

            integers.add(a)

            a = content.indexOf(chars, a + 1)//*从这个索引往后开始第一个出现的位置

        }

    } else if (null != content && content.length!! == 0) {

        return null

    }

    return integers

}

------------------------------------------------------------------------

/**

* content 你传入的String 字符串

* chars: 你查找的字符

*/

private fun changeTxt(content: String,chars: String){

    val content = "我爱罗爱我爱你哦!爱"

    val list = searchAllIndex(content, chars)

    val style = SpannableStringBuilder(content)

    if (null != list) {

        for (integer in list) {

            if (integer != content.length) {

                style.setSpan(ForegroundColorSpan(Color.RED), integer,

                        integer + 1, Spannable.SPAN_EXCLUSIVE_INCLUSIVE)

            } else {

                style.setSpan(ForegroundColorSpan(Color.RED), integer,

                        content.length, Spannable.SPAN_EXCLUSIVE_INCLUSIVE)

            }

        }

        //给TextView设置  SpannableStringBuilder 后的  content

        textl.text = style

    }

}

二、html增加颜色值

相关文章

网友评论

      本文标题:android String 某一个重复的字符改变颜色

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