Wie zu entlassen, modal VC mit fade-out-animation?

Ich bin mit dem folgenden code in meine Vorlage VC zu verblassen, in der das Kind modal VC, und diese gut funktioniert:

self.infoViewController.view.alpha = 0.0;
[self.navigationController presentModalViewController:self.infoViewController animated:NO];
[UIView animateWithDuration:0.5
             animations:^{self.infoViewController.view.alpha = 1.0;}];

Aber ich kann es nicht erhalten, fade out, ich habe versucht ein paar Dinge, dies ist die neueste, die ich habe versucht, das funktioniert nicht:

- (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;}];
}

}

Den modal-view-controller ist verblasst aber sofort, nicht über einen Zeitraum, wie es ist, wenn Ihr angezeigt.

InformationsquelleAutor der Frage Gruntcakes | 2012-01-21

Schreibe einen Kommentar