estoy usando el siguiente código en mi VC presentar a desvanecerse en el niño modal VC, y esto funciona bien:¿Cómo descartar un VC modal con animación de fundido de salida?
self.infoViewController.view.alpha = 0.0;
[self.navigationController presentModalViewController:self.infoViewController animated:NO];
[UIView animateWithDuration:0.5
animations:^{self.infoViewController.view.alpha = 1.0;}];
Sin embargo no puedo conseguir que se desvanecen, he intentado un par de cosas, esta es la última probé eso no funciona:
- (IBAction)dismissAction:(id)sender
{
if ([[self parentViewController] respondsToSelector:@selector(dismissModalViewControllerAnimated:)])
{
[[self parentViewController] dismissModalViewControllerAnimated:YES];
self.parentViewController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
self.parentViewController.view.alpha = 0.0;
[UIView animateWithDuration:0.5
animations:^{self.parentViewController.view.alpha = 1.0;}];
} else
{
[[self presentingViewController] dismissViewControllerAnimated:YES completion:nil];
self.presentedViewController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
self.presentedViewController.view.alpha = 0.0;
[UIView animateWithDuration:0.5
animations:^{
self.presentedViewController.view.alpha = 1.0;}];
}
}
el controlador de vista modal se desvaneció de inmediato, pero no durante un período de tiempo como lo es cuando su pantalla.
Si desea que este código se ejecute en dispositivos anteriores a iOS 5, deberá proteger la llamada a 'presentedViewController' así como a' dismissModalViewControllerAnimated'. – smparkes
Si ve una animación de descarte, seguro Parece que este código se está ejecutando y se está descartando a través de otra ruta. – smparkes