Como capturar o pressionamento do botão 'Voltar' no UINavigationController e executar seu próprio código?
Olá! Sou novo no desenvolvimento iOS em Swift e estou com um problema. No meu aplicativo, há um UINavigationController com várias telas. Preciso executar uma ação específica (como salvar dados ou mostrar um alerta) quando o usuário pressiona o botão 'Voltar' padrão na barra de navegação.
Tentei sobrescrever o método `viewWillDisappear`, mas ele é chamado não apenas ao pressionar 'Voltar', mas também em qualquer transição para outra tela (por exemplo, ao fazer push de um novo controller). Isso não serve.
Aqui está um exemplo do meu código:
```swift
class SecondViewController: UIViewController {
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
// Este código é acionado tanto ao pressionar 'Voltar' quanto ao navegar para frente
print("A tela está desaparecendo")
}
}
```
Li que é possível usar `UIBarButtonItem` e criar meu próprio botão 'Voltar', mas isso perde o estilo e a animação padrão. Como interceptar corretamente a ação?
No answers yet.
Faça login para deixar uma resposta