iOS Entlassen und Präsentieren view-controller-benutzerdefinierte animation
Ich habe einen view-controller, die ich bin präsentiert mit der folgenden objective-c-code:
CATransition *animation=[CATransition animation];
animation.delegate=self;
animation.duration=0.3;
animation.type=kCATransitionMoveIn;
animation.subtype=kCATransitionFromRight;
[self presentViewController:reader animated:NO completion:nil];
[reader.view.layer addAnimation:animation forKey:@"animation"];
und Abberufung der mit ähnlichen code in eine delegate-Methode
CATransition *animation=[CATransition animation];
animation.delegate=self;
animation.duration=0.3;
animation.type=kCATransitionMoveIn;
animation.subtype=kCATransitionFromLeft;
[self dismissViewControllerAnimated:NO completion:nil];
[self.view.layer addAnimation:animation forKey:@"animation"];
Allerdings gibt es ein problem: im Gegensatz zur Verwendung eines Navigations-controller, wo Sie sehen, eine Ansicht, schieben Sie auf andere Ansicht; hier die alte Ansicht einfach verschwindet sofort, so dass die neue Ansicht bewegt
auf eine leere Ansicht.
Wie behebe ich dieses problem? Ich brauche diesen code in IOS 6,7 und 8 und möchte es zu schauen, wie die horizontale animation sehen Sie beim gehen hin und her zwischen den Ansichten in der navigation-Controller.
Bearbeiten:
Die Lösung, die ich angenommen habe hat einen bug mit iOS 6, wenn ich eine Lösung finden können, dass behebt, ich werde Bearbeiten Sie diese post.
Edit 2:
Fand es. Es scheint, dass seit ich präsentiere eine zBar-view-controller ich brauche um diesen code zu verwenden
zbarController.wantsFullScreenLayout=NO;
nachdem ich die cameraOverlayView.
InformationsquelleAutor SOair | 2014-11-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vorlage eines view-Controllers mit einer benutzerdefinierten animation:
Abberufung eines view-Controllers mit einer benutzerdefinierten animation:
Ich bin mir nicht sicher, warum der status-Leiste nur aufhören würde richtig angezeigt. Der status bar Einstellungen in iOS geändert haben, so viele Male im Laufe der Jahre, die das problem verursacht werden könnte durch eine beliebige Anzahl von Dingen, angefangen von den globalen Einstellungen in Ihrer app delegieren, um Ihre view-controller, oder, wenn Sie eine Schublade navigation-Steuerung es kann ein problem sein. Leider kann ich nicht mehr helfen.
Das ist ok, ich werde eine neue Frage, wenn ich kann nicht herausfinden, dass es sich für mich schließlich. Vielen Dank für Ihre Hilfe! Ich werde markieren Sie Ihre Antwort als angenommen, und aktualisieren Sie die original-post, wenn ich eine Lösung finde, die Updates der iOS-6-bug.
Also
0.3
ist die Standard-Dauer?InformationsquelleAutor Brian Shamblen