0

Ich hatte dieses Problem seit Monaten mit mehreren Ansichten, beide Apple wie ImagePicker und VCs aus Storyboard zur Verfügung gestellt.Dismissing modal präsentiert ViewController wirft mich immer zurück zum root

Ich glaube, dass es etwas mit den zugrunde liegenden Ansichten zu tun hat, haben wir einen Tab-Bar-Controller und Navigation Controller in den meisten Ansichten.

Seltsame Sache ist die Verwendung einiger Open-Source-Ansichten von Pods verursacht diesen Fehler nicht.

Also ich bin zwei Ansichten tief auf einem Navigation-Controller und präsentiert eine andere Ansicht modal auf der Oberseite mit present(vc, animated: true, completion: {})

wirkt wie ein Zauber, jetzt mit dismiss(animated: true, completion: nil) diese Ansicht Entlassung wirft mich auf die ursprüngliche Ansicht des ganzen Weg zurück oder Root-Ansicht des Navigationscontrollers, hatten beide vorher, abhängig von der vorgestellten Ansicht.

aktualisieren:
Erstellen Sie ein Beispielprojekt versucht, das Verhalten zu reproduzieren, aber fehlgeschlagen. Zeichnete ein reduziertes Diagramm, um das aktuelle Fehlerverhalten besser zu erklären. Auch bemerkt, dass, wenn ich die Post-Ansicht einen Schritt früher in der Fandom-Ansicht aufrufen, es wie erwartet funktioniert.

sketch

+2

Durch den Aufruf von 'dism' wird der View-Controller, von dem aus Sie ihn aufgerufen haben, geschlossen. Es gibt hier nicht genug, um Ihr Problem zu diagnostizieren. Ich würde vorschlagen, dass Sie ein (minimales, aber vollständiges, überprüfbares Beispiel für das Problem) (http://stackoverflow.com/help/mcve) (ein MCVE) erstellen. Beginne mit einem leeren Projekt und finde heraus, was du hinzufügen musst, um dein Problem zu reproduzieren. Aber bis Sie uns zeigen, was wir tun müssen, um Ihr Problem zu reproduzieren, können wir nicht helfen. – Rob

+0

Erstellt einfaches Beispielprojekt und offensichtlich funktioniert es dort wie erwartet. Ich versuche gerade, den Einstiegspunkt zu debuggen, es ist ein ziemlich großes Projekt, an dem mehrere Leute gearbeitet haben, also bin ich mir nicht sicher, wo, wann oder was es kaputt gemacht hat. Wird aktualisiert, wenn ich weitere Informationen finde – TimLR

+0

Der andere Ansatz besteht darin, eine Kopie Ihres aktuellen Projekts zu erstellen und damit zu beginnen, nicht zusammenhängende Daten zu entfernen, indem Sie es testen, während Sie weitergehen, um zu sehen, ob sich das Problem noch manifestiert. In diesem Prozess identifizieren Sie wahrscheinlich, was das Problem verursacht. – Rob

Antwort

0

In meinem Fall i UITabBarController verwenden, und ich schrieb Code in viewWillAppear von UITabBarController

self.selectedIndex = 2 

so, wenn ich irgend etwas von jedem Controller, deren Eltern präsentieren ist UITabBarController und wenn ich entlassen, dass Es öffnet automatisch die dritte Registerkarte von UITabBarController.

Vielleicht haben Sie explizit einen Code geschrieben, um den spezifischen TabBar-Index auszuwählen.

Vielleicht ist dies nützlich für Sie oder andere.

Verwandte Themen