点击后退按钮时显示消息

时间:2017-01-21 04:00:29

标签: ios swift uiviewcontroller

我有2 UIViewControllerUINavigationController

从第二个UIViewController开始,当用户点按后退按钮时,我想在第一个UIViewController中显示一条消息。

有没有办法捕捉这个事件,然后在UIViewController

做出反应

1 个答案:

答案 0 :(得分:2)

正确的方法是使用展开segue,这也是您在第二个viewController被销毁之前从第二个viewController获取数据的机会。在ViewController1中添加:

    @IBAction func prepareForUnwind(_ segue: UIStoryboardSegue) {
        if let source = segue.source as? SecondViewController {
            //grab any data you need here and set your message up
        }
    } 

在你的故事板中,按住ctrl +从黄色视图控制器拖动到橙色出口以创建unwindSegue并将其链接到prepareForUnwind(这些图标都位于视图控制器的顶部和左侧的大纲视图中)。给你的segue一个标识符,如“unwindSecondViewController”。

在SecondViewController中。在viewWillDisappear中或手动关闭视图时添加:

performSegue(withIdentifier: "unwindSecondViewController", sender: self)