Остановить автореверс / бесконечно повторять анимацию UIView с помощью блока BOOL / завершения
м настраивает следующееUIView animateWithDuration:
метод, с намерением установить мойanimationOn
BOOL в другом месте программы, чтобы отменить этот бесконечный зацикленный повтор. У меня сложилось впечатление, чтоcompletion
блок будет вызываться каждый раз, когда заканчивается цикл анимации, но это неПохоже, это так.
Этоcompletion
блок когда-либо вызывается в повторяющейся анимации? И если нет, есть ли другой способ остановить эту анимацию вне этого метода?
- (void) animateFirst: (UIButton *) button
{
button.transform = CGAffineTransformMakeScale(1.1, 1.1);
[UIView animateWithDuration: 0.4
delay: 0.0
options: UIViewAnimationOptionCurveEaseOut | UIViewAnimationOptionAutoreverse | UIViewAnimationOptionRepeat
animations: ^{
button.transform = CGAffineTransformIdentity;
} completion: ^(BOOL finished){
if (!animationOn) {
[UIView setAnimationRepeatCount: 0];
}
}];
}