visuales sirve reducir quitar que para pantalla mueva movimiento hacer efectos como animaciones ios cocoa-touch caanimation

ios - quitar - para que sirve reducir movimiento iphone



Haciendo una animaciĆ³n para expandir y encoger un UIView (2)

Aquí hay un enfoque más pequeño que también hace un bucle:

[UIView animateWithDuration:1 delay:0 options:UIViewKeyframeAnimationOptionAutoreverse | UIViewKeyframeAnimationOptionRepeat animations:^{ yourView.transform = CGAffineTransformMakeScale(1.5, 1.5); } completion:nil];

La opción UIViewKeyframeAnimationOptionRepeat es lo que lo hace circular, si no quieres que siga "respirando". El bloque de animación actúa como la "inhalación" y la opción UIViewKeyframeAnimationOptionAutoreverse reproduce automáticamente la animación "exhale".

Quiero crear una animación que reduzca el tamaño de una UIView y su contenido por un factor. Básicamente, quiero hacer una animación que primero expanda la vista y luego la vuelva a reducir al tamaño original.

¿Cuál es la mejor manera de hacer esto? Intenté CALayer.contentScale pero no hizo nada en absoluto.


Puedes anidar algunos bloques de animación así:

C objetivo:

[UIView animateWithDuration:1 animations:^{ yourView.transform = CGAffineTransformMakeScale(1.5, 1.5); } completion:^(BOOL finished) { [UIView animateWithDuration:1 animations:^{ yourView.transform = CGAffineTransformIdentity; }]; }];

Swift 2:

UIView.animateWithDuration(1, animations: { () -> Void in yourView.transform = CGAffineTransformMakeScale(1.5, 1.5) }) { (finished: Bool) -> Void in UIView.animateWithDuration(1, animations: { () -> Void in yourView.transform = CGAffineTransformIdentity })}

Swift 3 y 4:

UIView.animate(withDuration: 1, animations: { yourView.transform = CGAffineTransform(scaleX: 1.5, y: 1.5) }) { (finished) in UIView.animate(withDuration: 1, animations: { yourView.transform = CGAffineTransform.identity }) }

y reemplazando los valores de escala y duraciones con los suyos.