77 Stimmen

Schließen einer über eine modale Überblendung angezeigten Ansicht

Ich rufe manuell eine Segue auf (als modal festgelegt), um ein Anmeldeformular in Xcode 4.2 mit Storyboards mit der folgenden Codezeile anzuzeigen:

[self performSegueWithIdentifier:@"LoginSegue" sender:nil];

Wahrscheinlich übersehe ich etwas ganz Einfaches, aber ich kann keine Möglichkeit finden, die Anmeldeansicht programmatisch zu schließen und zur vorherigen Ansicht zurückzukehren.

Die Ansicht ist Teil einer Navigationsansicht-Controller, so dass die Einstellung des Segue-Typs auf "Push" mir erlaubt, die Schaltfläche "Zurück" zu verwenden, um mich zurück zu meinem vorherigen Bildschirm zu senden, aber im "modalen" Modus bin ich nicht ganz sicher, wie dies zu erreichen (nach der Schaltfläche drücken, zum Beispiel)

Für jede Hilfe wären wir Ihnen sehr dankbar.

173voto

rob mayoff Punkte 356759

Wenn Ihr Einsatzziel iOS 5.0 oder höher ist, verwenden Sie diese Meldung:

[self dismissViewControllerAnimated:YES completion:nil];

Oder in Swift:

self.dismissViewControllerAnimated(true, completion: nil)

Wenn Ihr Einsatzziel älter ist, verwenden Sie diese (veraltete) Meldung:

[self dismissModalViewControllerAnimated:YES];

13voto

denny Punkte 199

[self dismissViewControllerAnimated:YES completion:nil]; ist eine neue Möglichkeit in IOS5

5voto

Simon Punkte 8981

Das Folgende sollte gut funktionieren...

[self dismissModalViewControllerAnimated:YES];

Ich mache genau das mit einer Login-Seite in meinem neueste Anleitung hier , ohne Probleme.

4voto

Bogdan Razvan Punkte 1238

Der folgende Code funktioniert in swift 3:

 self.dismiss(animated: true, completion: nil)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X