Example usage for android.text.style TextAppearanceSpan getLinkTextColor

List of usage examples for android.text.style TextAppearanceSpan getLinkTextColor

Introduction

In this page you can find the example usage for android.text.style TextAppearanceSpan getLinkTextColor.

Prototype

public ColorStateList getLinkTextColor() 

Source Link

Document

Returns the link color specified by this span, or null if it does not specify one.

Usage

From source file:tk.wasdennnoch.androidn_ify.utils.NotificationColorUtil.java

private TextAppearanceSpan processTextAppearanceSpan(TextAppearanceSpan span) {
    ColorStateList colorStateList = span.getTextColor();
    if (colorStateList != null) {
        int[] colors = (int[]) XposedHelpers.callMethod(colorStateList, "getColors");
        boolean changed = false;
        for (int i = 0; i < colors.length; i++) {
            if (ImageUtils.isGrayscale(colors[i])) {

                // Allocate a new array so we don't change the colors in the old color state
                // list.
                if (!changed) {
                    colors = Arrays.copyOf(colors, colors.length);
                }/*  w  ww .j a v a 2  s.  c  o  m*/
                colors[i] = processColor(colors[i]);
                changed = true;
            }
        }
        if (changed) {
            return new TextAppearanceSpan(span.getFamily(), span.getTextStyle(), span.getTextSize(),
                    new ColorStateList((int[][]) XposedHelpers.callMethod(colorStateList, "getStates"), colors),
                    span.getLinkTextColor());
        }
    }
    return span;
}