UIView animationWithDuration длительность не подтверждена - PullRequest
0 голосов
/ 24 ноября 2011

Я реализовал блок кода animationWithDuration в моем проекте примерно 5 раз, но когда я пытаюсь создать новый класс и поместить любой вид анимации в viewDidLoad, анимация не учитывает длительность, которую я также установил.Например, я установил длительность 5,0, анимация не волнует и по-прежнему анимирует ее на 0,5 секунды.Когда я создаю новый проект и копирую в него точный фрагмент кода, он прекрасно работает и выполняет анимацию в течение 5 секунд.Вот код:

[UIView animateWithDuration: 5
                      delay: 0.2
                    options:(UIViewAnimationCurveEaseInOut | UIViewAnimationOptionRepeat |  UIViewAnimationOptionAutoreverse)
                 animations:^{
                     water.transform = CGAffineTransformMakeTranslation(0, 200);
                 } completion:nil];

edit : коллега сказал мне, чтобы попытаться вставить его в viewDidAppear, и это работает.Но я все еще хочу знать, почему в 5 предыдущих ViewControllers, предшествующих этому конкретному, все анимации работают при помещении в viewDidLoad.Я предполагаю, что, возможно, по какой-то причине загрузка графики в этом конкретном ViewController занимает больше времени.

1 Ответ

0 голосов
/ 24 ноября 2011

Поместите ваш код в viewDidAppear:, потому что вы хотите, чтобы анимация запускалась только тогда, когда она видна.

...