我在Android 5(api 21)上使用ImageView时遇到了奇怪的问题。当我在xml中设置ImageView色调时,我无法在代码中更改它!我尝试了几种方法以编程方式更改ImageView的colorFilter,但它不起作用。我只在api 21上遇到这个问题。有什么想法吗?
在搜索了很多小时后,我发现这是api 21中的一个错误,当你将初始化色调颜色设置为ImageView
或ImageButton
时,你无法在以后的代码中更改它。最好的解决方案是将初始色调颜色移动到代码以防止出现此问题。
用这个
imageView.setColorFilter(ContextCompat.getColor(context, R.color.COLOR_YOUR_COLOR), android.graphics.PorterDuff.Mode.MULTIPLY);