Я пытаюсь связать анимационные события. Приложение, которое я кодирую для работы, имеет викторину с несколькими вариантами. Сначала вы выбираете свой ответ с множественным выбором. Вид викторины исчезает. Затем надпись («правильная» или «неправильная») исчезает, а затем исчезает. Наконец викторина снова исчезает. События вызываются и обрабатываются основным viewController. Я знаю, что я могу связать события с setAnimationDelegate и setAnimationDidStopSelector, но я думаю, что будет проще и понятнее просто использовать setAnimationDelay, чтобы все анимации успели закончить до следующего запуска.Iphone последовательная анимация с setAnimationDelay
Я создал эту функцию, которая существует в классе, который содержит «правильную» «неправильную» метку.
- (void)showIncorrect:(float)duration withDelay:(float)delay{
labelView.text = @"Incorrect!";
labelView.textColor = [UIColor redColor];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDelay:delay];
[UIView setAnimationDuration:(duration/2)];
self.alpha = 1.0;
[UIView commitAnimations];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDelay:(duration/2+delay)];
[UIView setAnimationDuration:(duration/2)];
self.alpha = 0.0;
[UIView commitAnimations];
}
Может кто-нибудь сказать мой, почему первый блок анимации игнорируется? Я пытался вложить один блок анимации в другой, и это тоже не работает.