package com.sunzn.utils.library;

import android.annotation.TargetApi;
import android.content.Context;
import android.graphics.Color;
import android.os.Build;
import android.support.v4.content.ContextCompat;
import android.text.Html;
import android.text.Spanned;

/**
 * Created by sunzn on 2016/12/9.
 */

public class ColorUtils {

    private ColorUtils() {
        super();
    }

    /**
     * ╔════════════════════════════════════════════════════════════════════════════════════════════
     * ║ 名称：获取颜色值
     * ╟────────────────────────────────────────────────────────────────────────────────────────────
     * ║ 参数：color
     * ╟────────────────────────────────────────────────────────────────────────────────────────────
     * ║ 返回：int
     * ╚════════════════════════════════════════════════════════════════════════════════════════════
     */
    public static int getColor(String color) {
        return Color.parseColor(color);
    }

    /**
     * ╔════════════════════════════════════════════════════════════════════════════════════════════
     * ║ 名称：获取颜色值
     * ╟────────────────────────────────────────────────────────────────────────────────────────────
     * ║ 参数：context
     * ║ 参数：color
     * ╟────────────────────────────────────────────────────────────────────────────────────────────
     * ║ 返回：int
     * ╚════════════════════════════════════════════════════════════════════════════════════════════
     */
    public static int getColor(Context context, int color) {
        return ContextCompat.getColor(context, color);
    }

    /**
     * ╔════════════════════════════════════════════════════════════════════════════════════════════
     * ║ 名称：用指定颜色标记全部正则匹配的字符串
     * ╟────────────────────────────────────────────────────────────────────────────────────────────
     * ║ 参数：input  要替换的字符串
     * ║ 参数：regex  正则表达式
     * ║ 参数：color  标记的颜色值
     * ╟────────────────────────────────────────────────────────────────────────────────────────────
     * ║ 返回：替换所有正则匹配的部分
     * ╚════════════════════════════════════════════════════════════════════════════════════════════
     */
    @TargetApi(Build.VERSION_CODES.N)
    public static Spanned markColor(String input, String regex, String color) {
        if (input != null) {
            String s = RegexUtils.getReplaceAll(input, regex, "<font color = " + color + ">" + regex + "</font>");
            return Build.VERSION.SDK_INT >= 24 ? Html.fromHtml(s, Html.FROM_HTML_MODE_LEGACY) : Html.fromHtml(s);
        } else {
            return null;
        }
    }

}

@@ -1994,19 +1994,16 @@
  %E8%BF%94%E5%9B%9E%EF%BC%9A
-%E6%9B%BF%E6%8D%A2%E6%89%80%E6%9C%89%E6%AD%A3%E5%88%99%E5%8C%B9%E9%85%8D%E7%9A%84%E9%83%A8%E5%88%86
+%E9%A2%9C%E8%89%B2%E6%A0%87%E8%AE%B0%E5%90%8E%E7%9A%84%E5%86%85%E5%AE%B9
 %0A   

Add markColor()