Блоки анимации UIView против CAAnimation


Эксперты по анимации IOS! Каковы плюсы и минусы каждого метода? Я знаю, что Apple рекомендует блоки вместо старых методов анимации UIView (UIView beginAnimations, и т. д.), Но как насчет CAAnimation? Когда вы будете использовать один метод против другого? Есть ли компромисс с точки зрения производительности?

2 8

2 ответа:

1) нет большой разницы в затратах памяти между блоками анимации UIView и CALayers's CAAnimation ни в терминах самих объектов.

2) существуют ограничения на тип анимации, который вы можете получить с помощью анимации UIView's, поэтому вы можете быть вынуждены использовать CAAnimation в любом случае.

3) Для тех типов более простых анимаций, которые может обрабатывать UIView, обычно используется более простой API, чем CAAnimation.

Как сказал miamk, существуют ограничения на типы анимаций, которые можно получить с помощью серии методов [UIView animateWith]. Лично я использую Каанимацию, но это потому, что я привык настраивать анимацию таким образом. Я чувствую, что у тебя больше контроля. Я обычно трачу день на то, чтобы сделать CAAnimation действительно очень тонко настроенным, а затем добавляю его в свой класс расширений UIView, чтобы любой вид мог его использовать.