繁体   English   中英

按下导航后退按钮时如何调用功能?

[英]How can I call a function when the navigation back button is pressed?

当我按下后退按钮时,我需要调用一个函数。 优选地,不必创建另一个按钮

将以下内容放在视图控制器中。

override func willMove(toParent parent: UIViewController?) {
    super.willMove(toParent: parent)

    if parent == nil {
        // The view is being removed from the stack, so call your function here
    }
}

当parent为nil时,表示视图正从堆栈中删除(即按下后退按钮)。

与matt的答案相比,一个考虑因素是在viewWillDisappear之前调用willMove 您的里程将根据您的功能而有所不同,但这可能会导致根据您的具体需求出现问题。 话虽如此,答案完全能够满足您的要求。

实现viewWillDisappear并在其中测试isMovingFromParentViewController 如果后者是真的,那么你就会被弹出。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM