objective animate objective-c ipad animation uiview uiimageview

objective-c - animate - uiview animation swift



Cómo detener una animación UIView (1)

Tengo varios UIImageViews dentro de un UIScrollView que quiero mover cuando el usuario pulsa uno de ellos. Es similar al comportamiento que obtienes cuando presiona prolongadamente un icono en el menú de su iPad / iPhone.

Entonces tengo lo siguiente:

- (void)startWiggling { for (UIImageView *touchView in [scrollView subviews]) { [UIView beginAnimations:@"wiggle" context:nil]; [UIView setAnimationDuration:0.1]; [UIView setAnimationRepeatAutoreverses:YES]; [UIView setAnimationRepeatCount:FLT_MAX]; //wiggle 1 degree both sides touchView.transform = CGAffineTransformMakeRotation(); touchView.transform = CGAffineTransformMakeRotation(-0.0174532925); [UIView commitAnimations]; } } - (void)stopWiggling { NSLog(@"Stop wiggling"); }

Esto funciona bien El problema es ... ¿Cómo puedo hacer que deje de moverse después de que el usuario haya presionado un botón? Tengo un botón y lo conecté, etc., y está llegando al método stopWiggling , así que está bien. Pero entonces...

  1. ¿Cómo elimino la animación UIView de estos UIImageViews ?
  2. ¿Puedo enlazar esta acción con el usuario presionando el botón de inicio en su dispositivo?

#import <QuartzCore/QuartzCore.h>

entonces

[myView.layer removeAllAnimations];

o

[self.view.layer removeAllAnimations];