使用thisanswer作为参考,我了解aView's
setAlpha(float)
基本上是在缓冲区上正常绘制视图,然后使用第二遍绘制场景中alpha值的视图,因此,设置aView's
alpha通常会损害应用程序的性能。
然而,ImageViews
有另一种方法称为setImageAlpha(int)
,根据我收集的信息,该方法将alpha值应用于ImageView's
彩色滤色片,从而消除了第二遍的需要,因此效率更高。
我的问题是-既然在setImageAlpha
上使用ImageView
更有效,有没有理由在setAlpha(float)
上使用ImageView
?或者应该避免这样做,以利于setImageAlpha(int)?
最佳答案
根据这些方法的字面意义,我猜setImageAlpha
只设置图像的alpha。如果图像视图有背景,则背景不会是半透明的。但是setAlpha
设置整个视图的alpha值。