0

我有两个视图可以根据视图中的按钮按下来翻转。该视图有两个 CAGradientLayers 作为子层。如果我在动作方法触发后立即翻转,则按钮正在更改渐变的不透明度,因此您会看到卡顿(UIVIew 翻转动画必须适应本身正在更改的按钮。)

我可以通过执行 performWithSelection:withObject:afterDelay:0.1f 来破解解决方案,但感觉就像是这样的破解。我尝试设置图层的 needsDisplay 属性并测试它何时被清除,但这可能不足以告诉我屏幕本身已重绘。

达夫

4

1 回答 1

0

最终这没有解决办法。从那以后,我发现在为视图设置动画时,如果您还尝试为超级视图设置动画,则会对性能产生严重影响。您可以在许多 iOS 应用程序中看到这一点,其中应用程序会为滚动列表中的图像设置动画 - 滚动会绊倒。

所以我学到的要么是动画,要么是视图,但不是两者兼而有之!

于 2012-07-15T13:24:51.433 回答