How to set color for imageview in Android

I want set icon into ImageView and i downloaded icons from this site : FlatIcon
Now i want set color to this icons but when use setBackground just add color for background and not set to icons!
When use NavigationView i can set color to icons with this code : app:itemIconTint="@color/colorAccent".

How can i set color to icons into ImageView such as itemIconTint ? Thanks all <3


Solution 1:

If you are using an icon maybe this can be useful:

android:tint="@color/colorAccent"

Otherwise you can try to modify the class:

ImageView imageViewIcon = (ImageView) listItem.findViewById(R.id.imageViewIcon);
imageViewIcon.setColorFilter(getContext().getResources().getColor(R.color.blue));

More info in this thread: Is it possible to change material design icon color from xml in Android?

Solution 2:

Use tint attribute of ImageView.

 android:tint="@color/colorAccent"

Solution 3:

 DrawableCompat.setTint(imageView.getDrawable(), ContextCompat.getColor(getApplicationContext(), R.color.white));

Solution 4:

Latest Lint shows a warning using android:tint, recommending to use app:tint, but the tint is not visible until you use it together with app:tintMode. So it looks like this:

app:tint="@color/yourcolor"
app:tintMode="add"