安卓 ImageView - setAlpha(float) 与 setImageAlpha(int) 的区别

3
使用这个答案作为参考,我理解ViewsetAlpha(float)基本上是在缓冲区上正常地绘制视图,然后使用第二次绘制将alpha值应用于场景中的视图,因此,设置View的alpha通常涉及到损害应用程序的性能。
但是,ImageViews有另一种方法叫做setImageAlpha(int),根据我的理解,它将alpha值应用于ImageView的颜色过滤器 - 完全消除了第二次渲染的需要,因此效率更高。
我的问题是 - 既然在ImageView上使用setImageAlpha效率更高,请问是否有任何原因可以使用setAlpha(float)来替代ImageView?或者说,普遍情况下应该避免使用setAlpha(float)而改用setImageAlpha(int)吗?
1个回答

3
从方法的字面意义来看,我猜测 setImageAlpha 只会设置图像的透明度。如果图像视图有一个背景,那么背景不会半透明。但是,setAlpha 会设置整个视图的透明度值。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接