Android setAlpha的参数正确吗?
在Android中,用于设置透明度的setAlpha函数在不同的类中接受不同的参数。在Android setAlpha的参数正确吗?,android,colors,alpha,Android,Colors,Alpha,在Android中,用于设置透明度的setAlpha函数在不同的类中接受不同的参数。在视图或其任何派生类中,setAlpha接受float作为参数(0是完全透明的,1是完全不透明的)。在Drawable及其派生setAlpha中,接受int作为参数(0是完全透明的,255是完全不透明的) 这就是同一属性上的类之间的参数存在差异的可靠原因吗?Drawable上的setAlpha在视图上的setAlpha之前就存在了。 Drawable.setAlpha(0-255)是更有效的设置alpha的方法,
视图
或其任何派生类中,setAlpha接受float
作为参数(0是完全透明的,1是完全不透明的)。在Drawable
及其派生setAlpha中,接受int作为参数(0是完全透明的,255是完全不透明的)
这就是同一属性上的类之间的参数存在差异的可靠原因吗?
Drawable
上的setAlpha
在视图上的setAlpha
之前就存在了。
Drawable.setAlpha(0-255)
是更有效的设置alpha的方法,因为结果alpha是该字节值。。所以它更直接,而且浮子的价格也很昂贵。现在使用硬件渲染时,浮点值更好,因为该值直接与GPU功能相关
信贷:凝固汽油弹据我所知,旧版本的android pre ICS视图使用int 0-255表示alpha,之后他们使用alpha 0-1,可能从那以后Drawable类没有更新,或者没有必要。好的,我明白了。但是他们不应该保持它的一致性吗,就像他们为了浮动而改变它一样,同样的改变也应该为Drawable做,对吗?在这样一个流行的操作系统中,setAlpha接受不同的类型作为参数,这看起来有点奇怪。我真的不知道,但他们似乎直到现在才更新Drawable。