使用PNG背景动画UIButton alpha:为什么动画在从alpha = 0过渡到alpha = 1时变为亮白色?

时间:2011-08-10 03:25:07

标签: ios4 core-animation transparency

这是困扰我的事情;我有一个简单的UIButton,其中包含以下PNG背景:

Button

我正在使用iOS 4块动画,而我所做的就是将它的alpha属性设置为0.0到1.0。但是,当动画正在进行时,UIButton变为亮白色,然后在属性达到1.0时最终显示为上图。

我非常难过 - 例如,如果我在Paint.NET中打开该图像并将图像的不透明度从0滑动到255,我会看到一个很好的淡入效果 - 这正是我想要的是什么。但是当我在iOS中为不透明度变化设置动画时,按钮会在动画的中间部分变为亮白色。

如果我将动画的持续时间更改为延长的时间,例如5秒,则效果更加突出。有什么想法吗?

编辑:我正在使用Xcode 4.1,并运行iOS 4.3.3(第一代iPad)。

1 个答案:

答案 0 :(得分:1)

经过深思熟虑后,问题是我的UIButton Round Rect 按钮;需要将类型更改为自定义。即使我为我的按钮设置的背景图像在类型为Round Rect时也起作用,但对该按钮应用alpha动画仍会导致默认的白色Round Rect样式在动画持续时间内出现。这就是我的眼睛在动画中被解释为“明亮的白色” - 它与我的PNG背景无关,而且与我正在使用的按钮的基础类型有关。

问题解决了。故事的道德启示?如果您要在使用自己的背景图片时为按钮设置动画,请将UIButton类型更改为自定义