Example usage for android.graphics.drawable Drawable mutate

List of usage examples for android.graphics.drawable Drawable mutate

Introduction

In this page you can find the example usage for android.graphics.drawable Drawable mutate.

Prototype

public @NonNull Drawable mutate() 

Source Link

Document

Make this drawable mutable.

Usage

From source file:Main.java

public static void overrideImageColor(int i, Drawable drawable) {
    drawable.mutate();
    drawable.setColorFilter(i, android.graphics.PorterDuff.Mode.SRC_IN);
}

From source file:Main.java

public static Drawable colorDrawable(Context context, Drawable drawable, int colorId) {
    Drawable result = drawable.mutate();
    result.setColorFilter(context.getResources().getColor(colorId), PorterDuff.Mode.MULTIPLY);
    return result;
}

From source file:Main.java

public static void changeDrawableColor(Drawable drawable, int color) {
    if (drawable != null) {
        drawable.mutate();
        drawable.setColorFilter(color, PorterDuff.Mode.SRC_ATOP);
    }/*from   www.  j  a v  a2 s  .  co m*/
}

From source file:Main.java

/**
 * Set the drawable to a specific color and return it
 * @param drawable The drawable to change
 * @param colorToSet The color to set it to
 * @return Drawable/*from   w ww . j  a va 2  s. com*/
 * @throws NullPointerException, if it fails, throws a null pointer
 */
public static Drawable colorDrawable(Drawable drawable, int colorToSet) {
    try {
        drawable.mutate().setColorFilter(colorToSet, PorterDuff.Mode.MULTIPLY);
        return drawable;
    } catch (Exception e) {
        e.printStackTrace();
        throw new NullPointerException();
    }
}

From source file:com.mindorks.framework.mvp.utils.ViewUtils.java

public static void changeIconDrawableToGray(Context context, Drawable drawable) {
    if (drawable != null) {
        drawable.mutate();
        drawable.setColorFilter(ContextCompat.getColor(context, R.color.dark_gray), PorterDuff.Mode.SRC_ATOP);
    }//from ww  w.  j  a  v  a 2  s .c o m
}

From source file:com.scrachx.foodfacts.checker.utils.ViewUtils.java

public static void changeIconDrawableToGray(Context context, Drawable drawable) {
    if (drawable != null) {
        drawable.mutate();
        drawable.setColorFilter(/*from w w  w  .  j  a  va 2 s  .c o  m*/
                ContextCompat.getColor(context, com.scrachx.foodfacts.checker.R.color.dark_gray),
                PorterDuff.Mode.SRC_ATOP);
    }
}

From source file:Main.java

/**
 * Set the drawable to a specific color and return it
 * @param drawableId the int ID of the drawable to change
 * @param colorToSet The color to set it to
 * @return Drawable/*from  w ww  .j  av a  2  s.  c o m*/
 * @throws NullPointerException, if it fails, throws a null pointer
 */
public static Drawable colorDrawable(int drawableId, int colorToSet, Context context) {
    try {
        Drawable drawable = ContextCompat.getDrawable(context, drawableId);
        drawable.mutate().setColorFilter(colorToSet, PorterDuff.Mode.MULTIPLY);
        return drawable;
    } catch (Exception e) {
        e.printStackTrace();
        throw new NullPointerException();
    }
}

From source file:org.tasks.ui.MenuColorizer.java

private static Drawable colorDrawable(Drawable drawable, int color) {
    if (drawable != null) {
        drawable.mutate();
        drawable.setColorFilter(color, PorterDuff.Mode.SRC_IN);
    }//from www. j  a  v a 2 s  .  co m
    return drawable;
}

From source file:org.mozilla.focus.utils.DrawableUtils.java

public static Drawable loadAndTintDrawable(@NonNull Context context, @DrawableRes int resourceId,
        @ColorInt int color) {
    final Drawable drawable = context.getResources().getDrawable(resourceId, context.getTheme());
    final Drawable wrapped = DrawableCompat.wrap(drawable.mutate());
    DrawableCompat.setTint(wrapped, color);
    return wrapped;
}

From source file:org.mozilla.gecko.util.DrawableUtil.java

public static Drawable tintDrawableWithStateList(@NonNull final Drawable drawable,
        @NonNull final ColorStateList colorList) {
    final Drawable wrappedDrawable = DrawableCompat.wrap(drawable.mutate());
    DrawableCompat.setTintList(wrappedDrawable, colorList);
    return wrappedDrawable;
}