返回UINavigationController的根视图时调用哪些方法?

时间:2011-11-10 17:29:15

标签: objective-c ios cocoa-touch uiviewcontroller uinavigationcontroller

返回UINavigationController的上一个视图或根视图时会调用哪些方法?

此外,当用户点击后退按钮返回上一个视图时,视图中正在消失的所有内容是否都会被释放,并且其值在父视图中无法恢复?

3 个答案:

答案 0 :(得分:2)

您可以在视图控制器中使用viewWillAppearviewDidAppearviewWillDisappearviewDidDisappear。这与UINavigationController无关。

答案 1 :(得分:2)

在从导航堆栈弹出视图控制器之前,将调用

viewWillDisappear:animated:

当用户在导航控制器中“返回”时,您可以执行任何操作。您可以通过self.navigationController.viewControllers访问导航堆栈中的任何其他控制器,{{1}}是当前堆栈中所有视图控制器的数组,根视图控制器位于索引0处。

答案 2 :(得分:2)

UINavigationController也有两个委托方法。也许他们会帮助你:

navigationController:willShowViewController:animated: navigationController:didShowViewController:animated: