Как контролировать скорость анимации? - PullRequest
0 голосов
/ 02 сентября 2011

Я перемещаю изображение, а затем расширяю его.Проблема в том, что мой имидж быстро движется.Есть ли способ, позволяющий запускать 2 анимации и контролировать скорость?Вот код:

- (IBAction)pushmove {
    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:2.5];
    square.transform = CGAffineTransformMakeTranslation(-200,-300);
    [UIView setAnimationDuration:1.5];
    square.transform = CGAffineTransformMakeScale(8,8);
    [UIView commitAnimations];

1 Ответ

1 голос
/ 11 ноября 2011

Да!

Это возможно и довольно просто. Ключевым моментом является то, что CAAnimation реализует протокол CAMediaTiming. Так что либо на CAAnimation, либо на CAAnimationGroup вы можете установить скорость следующим образом:

myAnimationGroup.speed = 2;

Таким образом, если длительность равна 4, ваша группа выполнится за 2 секунд.

Некоторые видео от Apple очень полезны на эту тему. WWDC 2010 Session 424 охватывает CAMediaTiming и его использование. Оформить заказ 46:30 секунд в видео.

Вот ссылка: Сессии WWDC 2010

...