Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在android 5(api 21)上设置ImageView颜色过滤器_Android_Imageview_Android 5.0 Lollipop - Fatal编程技术网

在android 5(api 21)上设置ImageView颜色过滤器

在android 5(api 21)上设置ImageView颜色过滤器,android,imageview,android-5.0-lollipop,Android,Imageview,Android 5.0 Lollipop,我对android 5api 21上的ImageView有奇怪的问题。 当我在xml中设置ImageView颜色时,我不能在代码中更改它!!! 我尝试了几种方法以编程方式更改ImageView的colorFilter,但都不起作用。 我只有在api 21上才有这个问题。 有什么想法吗?用这个 imageView.setColorFilter(ContextCompat.getColor(context, R.color.COLOR_YOUR_COLOR), android.graphics.Po

我对android 5api 21上的ImageView有奇怪的问题。 当我在xml中设置ImageView颜色时,我不能在代码中更改它!!! 我尝试了几种方法以编程方式更改ImageView的colorFilter,但都不起作用。 我只有在api 21上才有这个问题。 有什么想法吗?

用这个

imageView.setColorFilter(ContextCompat.getColor(context, R.color.COLOR_YOUR_COLOR), android.graphics.PorterDuff.Mode.MULTIPLY);
用这个

imageView.setColorFilter(ContextCompat.getColor(context, R.color.COLOR_YOUR_COLOR), android.graphics.PorterDuff.Mode.MULTIPLY);

在搜索了很多小时后,我发现这是api 21中的一个错误,当您将初始化淡色设置为ImageView或ImageButton时,以后无法在代码中更改它。
最好的解决方案是将初始着色颜色移动到代码以防止此问题

在搜索了很多小时后,我发现这是api 21中的一个错误,当您将初始化淡色设置为ImageView或ImageButton时,以后无法在代码中更改它。
最好的解决方案是将初始着色颜色移动到代码以防止此问题

到目前为止,您尝试了哪些方法?如果不在XML中设置初始颜色呢?我们能看一下你的代码吗?如果我去掉了初始的色调,这会很有魅力,但是我需要在我的很多回收适配器中加入很多If-else条件。我认为这是我处理这个问题的唯一方法。到目前为止,您尝试了哪些方法?如果不在XML中设置初始颜色呢?我们能看一下你的代码吗?如果我去掉了初始的色调,这会很有魅力,但是我需要在我的很多回收适配器中加入很多If-else条件。我认为这是我处理这个问题的唯一方法。它会在我认为近10毫秒的时间内更改颜色,然后返回到xml set tint。我在运行android 5.0.2的2台设备和1台模拟器中尝试了此操作。它会在我认为近10毫秒的时间内更改颜色,然后返回到xml set tint。我在运行android的2台设备和1台模拟器中尝试了此操作5.0.2