J'ai besoin de 3 icônes: ContextCompat.getDrawable(this, R.drawable.my_vector_drawable)
.Android: Teinte l'une des trois icônes
Première - sans teinte, seconde - avec une teinte, troisième - sans teinte aussi,
Ok.
ImageView img1 = (ImageView) findViewById(R.id.img1);
ImageView img2 = (ImageView) findViewById(R.id.img2);
ImageView img3 = (ImageView) findViewById(R.id.img3);
Drawable drawable1 = ContextCompat.getDrawable(this, R.drawable.my_vector_drawable);
Drawable drawable2 = DrawableCompat.wrap(ContextCompat.getDrawable(this, R.drawable.my_vector_drawable));
DrawableCompat.setTintMode(drawable2, PorterDuff.Mode.MULTIPLY);
DrawableCompat.setTintList(drawable2, ContextCompat.getColorStateList(this, R.color.menu_tint_colors));
Drawable drawable3 = ContextCompat.getDrawable(this, R.drawable.my_vector_drawable);
img1.setImageDrawable(drawable1);
img2.setImageDrawable(drawable2);
img3.setImageDrawable(drawable3);
Où R.drawable.my_vector_drawable
est une figure blanche.
Mais comme résultat - 3 icônes avec la teinte (POURQUOI?!).
Par exemple, j'ai essayé de régler ContextCompat.getColor(this, R.color.somecolor)
, et le résultat est ... Deux icônes avec une teinte! Icône 2 et 3, et première icône - sans teinte (Pourquoi ?!)
Comment charger PAS mis en cache drawable? Ou comment résoudre ce problème? AppCompat 23.4. +
Oh, vous avez raison, j'ai oublié cette méthode! Je vous remercie! – VKDev