Android设置TextView高亮字体、字体颜色渐变

Android设置TextView高亮字体、字体颜色渐变

Android设置TextView高亮字体、字体颜色渐变_第1张图片

渐变效果图:

Android设置TextView高亮字体、字体颜色渐变_第2张图片

实现的工具类TextFontUtils:

/**
 * 

* 字体字符串工具类 *

*/
public class TextFontUtils { /** * 高亮字体的颜色 */ public static String HIGHLIGHT_COLOR = "#0fc264"; /** * 使指定的字符串显示不同的颜色 * @param regexStr 高亮字符串 * @param targetStr 原字符串 * @param textView 文本框 */ public static void setHighlightFont(String regexStr, String targetStr, TextView textView) { targetStr = targetStr.replaceAll(regexStr, "" + regexStr + ""); textView.setText(Html.fromHtml(targetStr)); } /** * TextView 字体渐变 * @param textView 文本框 * @param startColor 起始颜色 * @param endColor 终止颜色 */ public static void setGradientFont(TextView textView, String startColor, String endColor){ // Shader.TileMode.CLAMP:如果着色器超出原始边界范围,会复制边缘颜色 LinearGradient gradient = new LinearGradient(0, 0, 0, textView.getPaint().getTextSize(), Color.parseColor(startColor), Color.parseColor(endColor), Shader.TileMode.CLAMP); textView.getPaint().setShader(gradient); // 直接调用invalidate()方法,请求重新draw(),但只会绘制调用者本身 textView.invalidate(); } }

你可能感兴趣的:(Android,实战效果记录,字符串,shader,安卓)