2011-10-21 47 views
0

嗨我明白,通常的viewWillAppearviewDidAppear不会被调用,如果在导航控制器上按下/弹出新视图。我在我的根视图控制器上实现了<UINavigationControllerDelegate>协议&所需的方法。不过,我很难将根视图控制器设置为导航控制器的代表。有没有办法做到这一点编程或故事板?设置根视图控制器作为导航控制器的代表

我试图

根视图控制器的viewWillAppear方法[self.navigationController setDelegate:self]但似乎没有任何效果。任何提示将不胜感激。

+0

viewWillAppear中和合作应入栈/视图控制器时被调用。 – jbat100

+0

好吧,有些情况不是这样的,请看这里,ao:http://davidebenini.it/2009/01/03/viewwillappear-not-being-called-inside-a-uinavigationcontroller/ – TheEye

+0

该帖子引用了a当您的导航控制器是另一个视图控制器的*子视图*时发生的情况。通常这很少发生在iPhone上,因为您的导航控制器始终是根控制器。 – lxt

回答

0

您是否尝试过把这些在viewDidLoad中为您的根视图控制器:

[self.navigationController viewWillAppear:NO]; //YES if you want to animate 

[self.navigationController viewDidAppear:NO]; 
相关问题