Parar uma animação UIView de inversão automática / repetição infinita com um bloco BOOL / completion
Estou montando o seguinteUIView animateWithDuration:
método, com a intenção de definir o meuanimationOn
BOOL em outro lugar no programa para cancelar essa repetição infinita em loop. Fiquei com a impressão de que ocompletion
bloco seria chamado toda vez que um ciclo da animação terminasse, mas isso não parece ser o caso.
É ocompletion
bloco já chamou em uma animação repetida? E se não, existe outra maneira que eu possa parar esta animação de fora deste método?
- (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];
}
}];
}