/** * 改变TextView部分字体的颜色 * * @param originalValue 整个字符串 * @param indexValue 需要改变的字 * @param color 改变的颜色 * @return */public static SpannableStringBuilder setTextViewColor(String originalValue, String indexValue, int color) {    SpannableStringBuilder builder = new SpannableStringBuilder(originalValue);    if (TextUtils.isEmpty(originalValue)) {        return builder;    }    for (int j = 0; j < originalValue.length(); j++) {        if (j + indexValue.length() <= originalValue.length()) {            String name = (String) originalValue.subSequence(j, j + indexValue.length());            if (name.equals(indexValue)) {                ForegroundColorSpan redSpan = new ForegroundColorSpan(color);                builder.setSpan(redSpan, j, j + indexValue.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);            }        }    }    return builder;}

 

/** * 改变TextView部分字体的颜色和大小 * * @param originalValue 整个字符串 * @param indexValue 需要改的部分 * @param color 需要改变的颜色 * @param size 需要改变的字体大小 * @param mIsBold 需要改变的字体是否加粗 * @return */public static SpannableStringBuilder setTextViewColorAndSize(String originalValue, String indexValue, int color, int size, boolean mIsBold) {    SpannableStringBuilder builder = new SpannableStringBuilder(originalValue);    if (TextUtils.isEmpty(originalValue)) {        return builder;    }    for (int j = 0; j < originalValue.length(); j++) {        if (j + indexValue.length() <= originalValue.length()) {            String name = (String) originalValue.subSequence(j, j + indexValue.length());            if (name.equals(indexValue)) {                ForegroundColorSpan redSpan = new ForegroundColorSpan(color);                builder.setSpan(new AbsoluteSizeSpan(size), j, j + indexValue.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);                int typeface;                if (!mIsBold) {                    typeface = Typeface.NORMAL;                } else {                    typeface = Typeface.BOLD;                }                builder.setSpan(new StyleSpan(typeface), j, j + indexValue.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE);                builder.setSpan(redSpan, j, j + indexValue.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);            }        }    }    return builder;}

 

点击链接加入群聊【编程之美】:https://jq.qq.com/?_wv=1027&k=9qYaAE3t

更多相关文章

  1. android默认字体大小、高度、宽度
  2. Android字体Font相关知识
  3. Android TextView里显示两种颜色
  4. Android TextView 字体加粗
  5. android 按钮按下效果(文字颜色和按钮同时变化)
  6. 【android】设置View字体点击变色和边框背景设置
  7. Android Studio中Textview里字体颜色的的设置
  8. android实现ios形式的字体,实现各种自定义的字体
  9. 如何改变Android Progressbar默认颜色

随机推荐

  1. Android Studio 修改Gradle源
  2. android使用MPAndroidChart开源图表折线
  3. Android初级教程实现电话录音
  4. 实现两个Spinner互相关联
  5. Android充电进度获取,圆形波浪进度展示
  6. android设置toolbar的menu itemTextView
  7. android 图片浏览器
  8. android之4.0控件switch自定义开关背景图
  9. 关于ANDROID task运行机制
  10. Android 抗锯齿的设置