У меня возникли проблемы с обработкой анимации в каком-то объективном коде C.
Сначала приведем соответствующий код:
BOOL pauseFlag; // Instance variable.
CGFloat animationDuration,pauseDuration; // Instance variables.
......
pauseFlag = NO;
animationDuration = 1.0;
pauseDuration = 1.0;
- (void)animationFunction
{
[UIView animateWithDuration:animationDuration
delay:pauseFlag?pauseDuration:0
options:UIViewAnimationOptionBeginFromCurrentState
animations:^{
......
}
completion:^(BOOL finished){
......
pauseFlag = Some_New_Value;
[self animationFunction];
}];
}
Тогда возникает проблема:
Задержка должна иметь место, когда pauseFlag равен ДА не происходит.Конечно, перед написанием этого поста я попробовал различные решения, которые мне приходили в голову, такие как изменение параметров, и я также проверил, что при вводе animationFunction pauseFlag имеет значение YES .Но во всех случаях задержка была проигнорирована.
Что я сделал не так?Мне нужно вставить паузу в мою анимацию и подумать, что это самый простой способ сделать это.У кого-нибудь есть идеи?
Только для информации, помимо этой проблемы.Этот анимационный код работает нормально.