Schieben View-Controller mehr als einmal wird nicht unterstützt?
Ich erhalte die folgende Fehlermeldung, wenn ich versuche zu wechseln Ansichten wie diese:
-(void)changeView1ToView4 {
[self.navigationController1 pushViewController:view4 animated:YES];
}
Dies nicht geschehen, wenn die app zum ersten mal geladen wird und der Benutzer geht direkt zu dieser Ansicht. Dieser Absturz passiert nur wenn ich auf eine meiner anderen Ansichten, kommen Sie zum Hauptmenü zurück, und versuchen Sie dann zu gehen Sie zu dieser Ansicht.
Auch, wenn Sie sich nicht sicher schon, ich bin mit einem UINavigationController. Auch dieser code wird in die app delegieren, und ich rufe es aus einer Sicht-controller hat eine übergeordnete Sicht, so bin ich mit ein .Referenz zu nennen mag:
[self.reference changeView1ToView4];
Gibt es eine Reale Möglichkeit dieses Problem zu beheben?
Dank!
Edit1:
[self.navigationController1 pushViewController:view4 animated:NO];
[self.navigationController1 pushViewController:view4 animated:YES];
I tried that and got this crash message in the console:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Pushing the same view controller instance more than once is not supported (<View2: 0x18d540>)'
InformationsquelleAutor SimplyKiwi | 2011-09-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn man 2 Ansichten auf den Stapel, versuchen, zu nennen:
und
Wenn Sie versuchen, zu schieben, mehr als eine Ansicht mit den animierten: Feld auf JA festgelegt auf beide, dann Sie verwirren den stack. Nur animieren, einen Blick auf diese Zeit.
Ja. Legen Sie die view-controller, der zuerst betätigt werden (natürlich die nicht-animierte) bis oben, dann setzen Sie die animierte one auf der Unterseite. Der Stapel rufen Sie den view-controller auf den oberen, dann den view-controller auf dem Boden und der Unterseite sollte man die Ansicht, die Sie sehen. Sagen Sie mir, wenn es nicht so ist.
Überprüfen Edit1 in meinem ursprünglichen post
AH! Ich dachte, Sie waren versucht, 2 VERSCHIEDENE Ansichten auf einmal. Warum würden Sie brauchen, um push eine Blick zweimal? Drücken Sie einfach den Blick einmal durch das löschen einer dieser Methoden. Ihre app sollte perfekt funktionieren.
du meinst, wenn du nur mit einer dieser Linien? Das ist, was ich Tat, ursprünglich und es verursacht diesen Absturz.
InformationsquelleAutor CodaFi
nur ein FYI, wenn Sie anrufen setViewControllers:animiert: es gibt keine Notwendigkeit, rufen Sie pushViewController: danach, sonst bekommst du das "Drücken der gleichen view-controller-Instanz mehr als einmal wird nicht unterstützt" crash.
InformationsquelleAutor Cole
InformationsquelleAutor Amr Angry
Überprüfen Sie diese Bedingung vor push
InformationsquelleAutor Karen Hovhannisyan