2016-09-22 2 views
0

Ich habe eine UIViewController innerhalb einer UIPageViewController. Die UIPageViewController ist in eine UINavigatonController eingebettet.Swift/popViewControllerAnimated throws nil/Wie gehe ich zum vorherigen viewController zurück?

Ich rufe einen zweiten UIViewController von:

self.navigationController?.pushViewController(vc, animated: true) 

vc eine UINavigationBar hat (von Interface) mit einem Leftbutton Artikel. Sobald diese Taste gedrückt wird, möchte ich von der 1. Viewcontroller zurück gehen:

@IBAction func backBtn(sender: AnyObject) { 

    navigationController?.popViewControllerAnimated(true) 
} 

Das bin ich LLDB wirft. Was vermisse ich? Hilfe wird sehr geschätzt.

PS: Die Navigationsleiste der UINavigatonController ist innerhalb des gesamten Projekts versteckt. Ich möchte, dass jede aufgerufene VCs ihre eigene Navigationsleiste hat.

PPS: Ich habe überprüft wie eine Milliarde Mal. Die Tasten Ausgänge/Aktionen sind richtig eingestellt.

enter image description here

Antwort

0

Das Problem war in der Tat die Aktion auf den Button. Ich habe die Aktion gelöscht. Erstellt eine neue Aktion durch Klicken und Ziehen. Kopieren/Einfügen meines Codes und dann hat es funktioniert.

enter image description here

Der einzige Unterschied, den ich sagen kann, war, dass, bevor er sagt: backBtnWithSender: und jetzt nur backButton (ohne AndSender zusätzlich).

Ich glaube, das Problem ist aufgetreten, weil ich die Tastenfunktion kopiert/eingefügt und es manuell an die Navigationsleiste Button verkabelt. Nach dem Erstellen einer "neuen" Funktion war dieses Problem verschwunden.

Verwandte Themen