Friday 7 April 2017

Change color of a material icon - Android

17:27:00 Posted by Kumanan , ,
public final class DrawableUtils {

    public static Drawable applyColorFilter(@NonNull Context context, @DrawableRes int drawableId, @ColorRes int colorId, @NonNull PorterDuff.Mode mode) {
        Drawable d = ContextCompat.getDrawable(context, drawableId);
        int color = ContextCompat.getColor(context, colorId);

        d.setColorFilter(color, mode);
        return d;
    }

    public static Drawable applyColorFilter(@NonNull Context context, @DrawableRes int drawableId) {
        return applyColorFilter(context, drawableId, R.color.colorPrimaryDark, PorterDuff.Mode.SRC_ATOP);
    }
}