如何制作不绘制图像透明部分的ImageView?

问题描述 投票:0回答:1

我需要我的自定义ImageView(称为ItemAnimationView)不绘制其透明图像的任何部分。

我将这个类用于很多实例和许多不同的图像,所以最好只用我可以在ImageView上调用的方法来解决这个问题,因为手动编辑所有不同的图像是行不通的。

那么是否有某种ColorFilter不仅可以过滤掉某种颜色,而且可以过滤掉任何程度上透明的每个像素?

如果有一种方法可以在不访问实际位图的情况下执行此操作也很方便,因为到目前为止我用于视图的唯一代码行是

setImageResource(item.getResourceID());

和一些动画,所以我没有相关的Bitmap对象。

android imageview alpha colorfilter
1个回答
1
投票

我用这个矩阵使用ColorMatrixColorFilter达到了预期的效果:

{1f,0f,0f,0f,0f,
0f,1f,0f,0f,0f,
0f,0f,1f,0f,0f,
0f,0f,0f,256f,-256*254};
© www.soinside.com 2019 - 2024. All rights reserved.