Meine App hat die folgende Strömung, wenn der Benutzer inDismissViewController Swift
Loading Screen -----> Main Screen -----> Rest of App
und die folgende Strömung wird protokolliert, wenn er nicht:
Loading Screen -----> Login Screen -----> Main Screen -----> Rest of App
Jetzt bin der Umsetzung ich die Logout-Funktion . Ich habe den folgenden Code in main Screen
hinzugefügt:
func handleLogout() {
if self.presentingViewController != nil {
var vc = self.presentingViewController
while ((vc!.presentingViewController) != nil) {
vc = vc!.presentingViewController
}
vc?.dismissViewControllerAnimated(true, completion: {
})
}
}
Dies funktioniert gut, wenn der 1st
Weg folgt (der Benutzer angemeldet wurde, wenn die App gestartet wurde) wie die App kehrt zum Loading Screen
und lädt dann nach oben die Login Screen
wie erwartet. Wenn jedoch der Pfad 2nd
gefolgt wurde (der Benutzer war nicht angemeldet, als die App gestartet wurde, und Login Screen
wurde verwendet) dieser Code führt zu der Login Screen
wird direkt geöffnet und der gesamte Abmeldeprozess fehlgeschlagen. Gibt es eine Möglichkeit, dass ich sicherstellen kann, dass der Loading Screen
derjenige ist, der immer von diesem Code geladen wird, unabhängig davon, welcher der beiden Pfade befolgt wurde.
Sind Sie mit Storyboards? Wenn dies der Fall ist, erstellen Sie einfach einen Abwicklungsbereich zum Ladebildschirm und rufen Sie ihn von wo auch immer Sie möchten – Paulw11