我对可绘制对象的 setColorFilter-Method 有疑问。
它在 Android 2.2 上运行良好,但在低于该版本的版本上运行不佳。
我的问题类似于此处描述的问题 Drawable.setColorFilter() not working on Android 2.1 ,但这对我不起作用......
我使用的代码在 Android 2.2 上运行良好,但在低于此版本的系统上运行不佳。
ImageView imageView = (ImageView) findViewById( R.id.imageView1 );
Bitmap immutableBitmap = BitmapFactory.decodeResource( getResources(), R.drawable.mybitmap );
Bitmap mutableBitmap = immutableBitmap.copy( Bitmap.Config.ARGB_8888, true );
immutableBitmap.recycle();
immutableBitmap = null;
Drawable d1 = new BitmapDrawable( mutableBitmap );
d1.setColorFilter( 0xff00ffff, PorterDuff.Mode.MULTIPLY );
imageView.setImageDrawable( d1 );
非常感谢任何让它工作的线索:)
最佳答案
我不知道是否有其他解决方法,但我发现使用 imageView.setBackgroundDrawable()
而不是 imageView.setImageDrawable()
解决了这个问题< 2.2.
关于android - setColorFilter 不适用于 Android < 2.2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5750313/