在我的代码中,我将 Sprite 的 alpha 设置为 0.7
square.alpha = 0.7;
稍后在我的代码中,我在条件语句中检查此 alpha。
if (square.alpha == 0.7) {//do stuff}
我一直在摸不着头脑,为什么直到我做了 atrace(square.alpha);
而不是0.7
我得到了它才起作用0.69921875
。
这个数字 ( 0.69921875
) 对于我设置的 alpha 为 0.7 的每个精灵实例都是相同的。
我做了一些测试,看起来唯一alpha
返回的值与我设置的值完全相同的是0
,0.5
和1
. 其他任何东西似乎总是返回一个非常接近我设置的数字,但不完全是。例如0.2
会给我0.19921875
为什么会这样?
我使用 Flex 编译代码,不确定这是否对此有任何影响。