Wie wird die Popup-Ansicht in UINavigationController angezeigt?

7

Ich möchte eine Aktion ausführen, wenn der Benutzer bei einem bestimmten UINavigationController den Zurück-Button auf meinem UIViewController gedrückt hat.

Leider sieht es so aus, als ob UINavigationControllerDelegate keine Methoden hat, um über das Aufrufen von Ansichten benachrichtigt zu werden.

Als Workaround habe ich jetzt in der viewDidDisappear -Methode meine Aktion, die nur ausgelöst wird, wenn animated ist YES . Das funktioniert, aber es ist ein bisschen hässlich.

Wie soll ich das richtig machen?

    
Peterdk 09.03.2011, 13:57
quelle

4 Antworten

0

Sie können entweder eine Delegate-Methode aufrufen, wenn viewWillDisappear angezeigt wird, oder eine Logik für viewWillAppear für bestimmte UIViewController festlegen.

    
alloc_iNit 28.06.2011, 04:45
quelle
14

Die gängigste Methode, einen Pop vom Navigationsansicht-Controller (sowie von modal) zu behandeln, ist die Implementierung von viewWillDisappear für Ihren View-Controller.

%Vor%     
samwize 26.03.2014 10:38
quelle
4

Wenn Sie einen Verweis auf den Controller im Stapel haben, den, der angezeigt wird, wenn dieser gepackt wird, können Sie sich als Delegierter registrieren und durch

überprüfen %Vor%     
Max_B 25.10.2011 17:06
quelle
1

Sie können das UINavigationControllerDelegate beobachten und prüfen, ob der Übergang stattgefunden hat:

%Vor%     
Ron Fridman 23.12.2014 15:47
quelle