【发布时间】:2022-02-02 12:18:37
【问题描述】:
我必须以编程方式更改 imageview 的色调颜色。 我将从服务器获取一个字符串值,例如:
"颜色":"#fff"
我必须为图像视图设置与色调相同的颜色。
以下代码将不起作用 =,因为 imageview 中的图像没有设置为背景,而是设置为 src。
imageView.getBackground().setColorFilter(Color.parseColor("#ff8800"), PorterDuff.Mode.SRC_ATOP);
另外,这些是我尝试过的,但没有运气。 :( 尝试1:
ImageViewCompat.setImageTintList(imageView, ColorStateList.valueOf(Integer.parseInt("#ffffff")));
尝试2:
imageView.setColorFilter(ContextCompat.getColor(context, Color.parseColor("#ffffff")), android.graphics.PorterDuff.Mode.SRC_IN);
尝试3:
imageView.setColorFilter(ContextCompat.getColor(context, R.color.______), android.graphics.PorterDuff.Mode.MULTIPLY);
请注意,我不能使用 R.color.SOMETHING ,因为我的文件中没有那种颜色。
提前致谢。
【问题讨论】:
标签: java android android-studio android-imageview