Android开发之代码开发部分字符串变色

方法如下:

/**
     * 字符串截取变红
     *
     * @param otherString  你要变色的字符,可为null
     * @param changeString 你要变色的字符
     * @param allString    整个字符串
     * @param number       要变色的控件
     */
    public void stringChangeColor(CheckBox number, String allString, String changeString, String otherString) {
        int fstart = allString.indexOf(changeString);
        int fend = fstart + changeString.length();
        SpannableStringBuilder style = new SpannableStringBuilder(allString);
        if (!"".equals(otherString) && otherString != null) {
            int bstart = allString.indexOf(otherString);
            int bend = bstart + otherString.length();
            style.setSpan(new ForegroundColorSpan(Color.parseColor("#586E98")), bstart, bend, Spannable.SPAN_EXCLUSIVE_INCLUSIVE);
        }
        style.setSpan(new ForegroundColorSpan(Color.parseColor("#586E98")), fstart, fend, Spannable.SPAN_EXCLUSIVE_INCLUSIVE);
        number.setText(style);
    }


直接调用即可:

 stringChangeColor(registerClause, getString(R.string.reapal_protocol), "《扬宏豕慧用户协议》、《法律声明》、《隐私协议》", null);

猜你喜欢

转载自blog.csdn.net/xiayiye5/article/details/80693418