我使用 UIView 动画在两个视图之间交叉淡入淡出。我注意到以下令人惊讶的事实:
如果我(比如说)在同一个地方有两个相同的视图,并且我在它们之间制作了一个交叉淡入淡出动画(例如,在同一个动画中,将 alpha 从 0.0 动画到 1.0,而在另一个动画中从 1.0 动画到 0.0),在在动画中,可见结果在动画期间略低于不透明 - 这是一个明显的伪影,可以通过在交叉淡入淡出的视图后面放置一些其他视图来验证(它在动画期间短暂可见,然后再次被遮挡)。
我希望(使用任何动画时序曲线)完美配对的 0->1 和 1->0 alpha 转换将始终加起来为 1.0 的净 alpha,并且在这种测试情况下,我永远不会看到任何可见的变化阿尔法,但我愿意。
知道这里发生了什么吗?我可以解决这个问题以进行“修复”,但我最感兴趣的是我在混合概念上缺少的东西。
谢谢!