UIView动画块与CAAnimation的区别

8

iOS动画专家们!每种方法的优缺点是什么?我知道苹果推荐使用块而不是旧的UIView动画方法(UIView beginAnimations等),但是CAAnimation呢?你何时会使用一种方法而不是另一种方法?在性能方面有什么权衡?

2个回答

10

1) 在内存开销方面,使用UIView的动画块和CALayer的CAAnimation之间并没有太大差异,对象本身也是如此。

2) 使用UIView动画时存在类型限制,因此您可能不得不使用CAAnimation来实现某些类型的动画。

3) 对于那些UIView可以处理的简单动画类型,它通常比CAAnimation更简单易用的API.


谢谢!我有点希望能进行更多的讨论,不过我猜这个已经涵盖了一切? - mjisrawi

2

正如miamk所说,使用[UIView animateWith]方法系列实现动画的类型是有限制的。个人而言,我使用CAAnimation,但这是因为我习惯以这种方式设置动画。我感觉你可以更好地控制它。我倾向于花一天时间将CAAnimation微调到极致,然后将其添加到我的UIView扩展类中,以便任何视图都可以使用它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接