在ios中点击后退按钮后调用什么方法

时间:2013-04-05 07:49:25

标签: ios objective-c uiviewcontroller uinavigationcontroller

我有2个带导航控制器的视图控制器。 当我在第二个中使用[self.navigationController popViewControllerAnimated:YES];时 - 第一个打开,但viewDidLoad中的方法不会被调用。在这种情况下,第一个控制器中调用的方法是什么?

2 个答案:

答案 0 :(得分:25)

导航控件将viewWillAppear:发送到视图控制器,然后将其视图放在屏幕上,然后viewDidAppear:发送。{/ p>

viewWillAppear:viewDidAppear:内,视图控制器可以检查self.isMovingToParentViewController。如果isMovingToParentViewControllerYES,则视图控制器首先被添加到导航控制器中(可能是因为它是导航控制器的根视图控制器,或者因为它被推送)。如果isMovingToParentViewControllerNO,则视图控制器已经位于导航控制器的堆栈中,并且正在弹出另一个视图控制器以显示它。

阅读“Handling View-Related Notifications” in the UIViewController class reference

答案 1 :(得分:1)

在这种情况下,将调用viewWillAppear方法。

-(void)viewWillAppear:(BOOL)animated
{

}