Wie man den Zurück-Button in UINavigationController abfängt und eigenen Code ausführt?
Hallo! Ich bin neu in der iOS-Entwicklung mit Swift und habe ein Problem. In meiner App gibt es einen UINavigationController mit mehreren Bildschirmen. Ich muss eine bestimmte Aktion ausführen (z.B. Daten speichern oder eine Warnung anzeigen), wenn der Benutzer den standardmäßigen Zurück-Button in der Navigationsleiste drückt.
Ich habe versucht, die Methode `viewWillDisappear` zu überschreiben, aber sie wird nicht nur beim Drücken des Zurück-Buttons aufgerufen, sondern auch bei jedem Übergang zu einem anderen Bildschirm (z.B. beim Pushen eines neuen Controllers). Das ist nicht geeignet.
Hier ist ein Beispiel meines Codes:
```swift
class SecondViewController: UIViewController {
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
// Dieser Code wird sowohl beim Drücken von "Zurück" als auch beim Vorwärtsgehen ausgelöst
print("Bildschirm verschwindet")
}
}
```
Ich habe gelesen, dass man `UIBarButtonItem` verwenden und einen eigenen Zurück-Button erstellen kann, aber dann gehen der Standardstil und die Animation verloren. Wie kann ich den Zurück-Button korrekt abfangen?