Rufen Sie diese Codezeile innerhalb Ihrer ParentViewController
‚s viewDidLoad
Methode nicht die ChildViewController
self.navigationItem.backBarButtonItem = UIBarButtonItem(title: "", style: .plain, target: nil, action: nil)
die folgende Codezeile entfernen von Ihrer ChildViewController
self.navigationItem.hidesBackButton = true
Und Sie werden OK! Wenn Sie eine Aktion für diesen Übergang erstellen müssen, meine ich immer, wenn der Benutzer auf die Zurück-Schaltfläche von ChildViewController
tippt.Einfach diese Methode aufrufen, innerhalb Ihrer ChildViewController
override func didMove(toParentViewController parent: UIViewController?) {
super.didMove(toParentViewController: parent)
if parent == nil {
} else {
}
}
Edited:
ChildViewController
override func didMove(toParentViewController parent: UIViewController?) {
super.didMove(toParentViewController: parent)
if parent == nil {
NotificationCenter.default.post(name: NSNotification.Name.init("Post"), object: nil)
} else {
}
}
parent
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
NotificationCenter.default.addObserver(self, selector: #selector(self.handler(notification:)), name: NSNotification.Name.init(rawValue: "Post"), object: nil)
}
func handler(notification: Notification) {
let alertController = UIAlertController(title: "Hello", message: nil, preferredStyle: .alert)
alertController.addAction(UIAlertAction(title: "Dismiss", style: .default, handler: nil))
self.present(alertController, animated: true, completion: nil)
}
Die 0
ist funktioniert, aber mit einem Problem wie folgt:
Warnung: Versuch darzustellen, während eine Präsentation im Gang ist!
Daher werde ich nicht empfohlen. Viel Glück
Ich denke, Sie können nur das richtige Bild von zurück Pfeil festlegen, hier ist die [Vermögenswerte] (http://StackOverflow.com/A/30110190/4929876) laden Sie es und fügen Sie es auf die benutzerdefinierte Schaltfläche zurück. –
self.navigationItem.hidesBackButton = true; Wenn es wahr ist? Das bedeutet, dass Sie den Standard-Zurück-Button und ihr Icon auch nicht bekommen können. – Mannopson
@Mannopson Ja, ich hatte es auf wahr gesetzt. – Nitesh