Comment intercepter l'appui sur le bouton « Retour » dans UINavigationController et exécuter votre code ?
Bonjour ! Je suis débutant en développement iOS avec Swift et j'ai un problème. Dans mon application, il y a un UINavigationController avec plusieurs écrans. Je dois exécuter une action spécifique (par exemple, sauvegarder des données ou afficher une alerte) lorsque l'utilisateur appuie sur le bouton standard « Retour » dans la barre de navigation.
J'ai essayé de surcharger la méthode `viewWillDisappear`, mais elle est appelée non seulement lors de l'appui sur « Retour », mais aussi lors de toute transition vers un autre écran (par exemple, lors du push d'un nouveau contrôleur). Cela ne convient pas.
Voici un exemple de mon code :
```swift
class SecondViewController: UIViewController {
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
// Ce code s'exécute à la fois lors de l'appui sur « Retour » et lors de la navigation vers l'avant
print("L'écran disparaît")
}
}
```
J'ai lu qu'on peut utiliser `UIBarButtonItem` et créer son propre bouton « Retour », mais cela fait perdre le style et l'animation standard. Comment intercepter correctement le