我想将图标设置为ImageView
,我从此网站下载了图标:this tutorial
现在我想为这个图标设置颜色,但是当使用setBackground
时只需为背景添加颜色而不设置为图标!
使用NavigationView
时,我可以使用以下代码将颜色设置为图标:app:itemIconTint="@color/colorAccent"
。
如何将图标的颜色设置为ImageView
,例如itemIconTint
?谢谢所有< 3
答案 0 :(得分:111)
如果您使用的是图标,这可能很有用:
android:tint="@color/colorAccent"
否则你可以尝试修改类:
ImageView imageViewIcon = (ImageView) listItem.findViewById(R.id.imageViewIcon);
imageViewIcon.setColorFilter(getContext().getResources().getColor(R.color.blue));
此主题中的更多信息:Is it possible to change material design icon color from xml in Android?
答案 1 :(得分:22)
使用ImageView的tint属性。
android:tint="@color/colorAccent"
答案 2 :(得分:5)
DrawableCompat.setTint(imageView.getDrawable(), ContextCompat.getColor(getApplicationContext(), R.color.white));
答案 3 :(得分:2)
在android XML中使用此色调imageview
android:tint="@color/yourcolor"
答案 4 :(得分:2)
最新的Lint使用android:tint显示警告,建议使用app:tint,但只有将其与app:tintMode一起使用时,该色才会可见。所以看起来像这样:
app:tint="@color/yourcolor"
app:tintMode="add"
答案 5 :(得分:1)
只需使用:ivMyImageView.setColorFilter(ActivityCompat.getColor(context, android.R.color.holo_green_light))
答案 6 :(得分:1)
app:tint="@color___"
答案 7 :(得分:0)
使用 imageView.setColorFilter(getResources()。getColor(R.color.color_white));
答案 8 :(得分:0)
只需在图像视图中添加这一行。
在 XML 文件中:-
android:tint="@color/color_name"
or
app:tint="@color/color_name"
在 Java 文件中:-
imageViewIconName.setColorFilter(getContext().getResources().getColor(R.color.color_name));