2012-11-14 11 views
10

Hallo allerseits! Ich habe Probleme mit der Animation von UINavigationController. Ich habe Master-Detail-Ansicht. Auf einen Knopf, das ist die Detailansicht. Die Detailansicht wird korrekt geöffnet, mit normaler Animation der Kopfzeile und mit Verschieben des Inhalts. Aber wenn ich auf "Zurück" -Button klicke, wird der Header korrekt animiert und der Inhalt des Details verschwindet im Moment und nicht animiert. Hier ist der Link auf Demonstration des Problems: https://www.youtube.com/watch?v=C4UApAhEhx8UINavigationController - pop Animation Bug

Zum Öffnen I-Standard verwenden

AboutViewController *aboutViewController = [[AboutViewController alloc] initWithNibName:@"AboutViewController_iPhone" bundle:nil]; 
[self.navigationController pushViewController:aboutViewController animated:YES]; 

Ich versuchte Ansicht mit Code Pop, nicht mit Zurück-Taste, aber es ist das gleiche Problem.

Sorry für mein schlechtes Englisch. Danke!

+0

http://www.ralfebert.de/tutorials/iosdev/navigationcontroller/ – Ramz

+0

Wenn es nicht funktioniert.Bitte geben Sie Ihren Code zum Aufrufen des View-Controllers – Ramz

+0

[self.navigationController popViewControllerAnimated: YES]; – Yevgen

Antwort

0

Bitte benutzen Sie den Code für zurück zum vorherigen Fenster:

[self.navigationController Pushviewcontroller animiert: YES];

Ich denke, es wird Ihnen helfen.

-1

Bitte den Code für zurück zum vorherigen Fenster verwenden:

[self.navigationController popViewController animated:YES]; 
12

Dieses in Ihrem Code, wenn irgendwo passiert, Sie sind entweder einen Anruf zu einem der viewWillAppear Pendants mit YES oder NO anstatt dass iOS zwingen entscheiden oder wenn Sie Anrufe mit [super viewWillAppear:animated] mit viewDidAppear nicht übereinstimmen.

+1

+1 Ich habe seit Tagen nach der Ursache gesucht. Das Aufspüren der Nichtübereinstimmung der Anrufe hat den Trick gemacht. –

0

Ich habe genau die gleiche Frage wie Ihre, und mein Problem ist, dass ich die selectedindex Tab-Leiste in Viewwilleppear Methode von einigen View-Controller gesetzt, dies verursacht einige Bug der Navigationsleiste.

Also verschiebe ich einfach den Code zu viewdidappear, das die Fehler beheben.

Hoffe eines Tages können Sie dies sehen, auch wenn Sie dies bereits lösen können. Also hoffe, das wird anderen helfen.

1

Ich hatte das gleiche Problem und Miha's Antwort wies mich in die richtige Richtung. In meinem Fall hatte ich einen benutzerdefinierten UITabBarController, in dem ich etwas in viewDidAppear verarbeitete. Das Problem wurde durch die Abwesenheit von [super viewDidAppear:animated]; in meinem ViewDidAppear verursacht.

Verwandte Themen