ANDROID: CAMBIAR EL COLOR DE UN VECTOR DRAWABLE

google_colors

¿Quién no ha necesitado alguna vez el mismo icono en distinto color? Yo por lo menos sí, y muchas veces. Cambiar el color de los iconos nos puede facilitar bastante la vida además de hacer menos pesada nuestra aplicación ya que necesitaremos incluir menos iconos en nuestra apk. Para el cambio de color en un vector necesitaremos obviamente el vector y un color. Con estos dos recursos podremos llamar al método “setColorFilter” del objeto “Drawable” y modificar el color de todo el vector. Os dejo el código para que le echéis un vistazo.

// Creamos un objeto Drawable y lo obtenemos con "getDrawable" pasándole como parámetro el identificador del vector.
Drawable drawable = getDrawable(R.drawable.ic_car);

// Obtenemos el valor entero del color deseado a partir de un valor RGB o ARG.
int colorValue = Color.parseColor("#009688");

// Modificamos el color del objeto "Drawable" llamando a "setColorFilter".
// La clase "PorterDuffColorFilter" extiende de la clase "ColorFilter" y es un filtro de color que se puede utilizar para teñir los píxeles con el color deseado y con un modo compuesto específico de la clase "PorterDuff".
drawable.setColorFilter(new PorterDuffColorFilter(colorValue, PorterDuff.Mode.SRC_IN));

// Asignamos la imagen a un "ImageView"
imageView.setImageDrawable(drawable);
Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

w

Conectando a %s