0

在我的应用程序中,当用户按下导航栏上的后退按钮时,我希望程序触发一些动作。因此,我一直在使用willMoveToParentViewController. 但是,当添加或删除 viewController 时会调用该方法。添加viewController时有什么方法可以防止它被调用?如果有其他方法可以检测何时按下导航栏中的后退按钮,请提出建议。

谢谢!

4

2 回答 2

0

用于viewDidDisappear相同。您可以在此处查看苹果文档。这会在视图控制器的视图从视图层次结构中删除时通知视图控制器。

于 2012-12-17T00:53:14.830 回答
0

作为替代方案,您可以检查 parent 是否nilwillMoveToParentViewController. 这将nil是按下后退按钮时。

例如:

override func willMoveToParentViewController(parent: UIViewController?) {
    super.willMoveToParentViewController(parent)
    if parent == nil {
        // view controller being removed (back button)
        // could use this area for passing back some variables 
        //   or whatever else you needed to do when back is hit
    } else {
        // view controller being added, do nothing
    }
}
于 2016-09-22T20:17:00.297 回答