一个带两个导航栏的控制器

时间:2013-07-09 13:30:31

标签: ios uinavigationcontroller uinavigationbar

我正在使用2 UINavigationController s,一切都很好,除了当我返回到另一个UINavigationController中的前一个控制器时,我有它的导航栏+前一个控制器的导航栏,例如:

Navigation Controller1 => A controller => B controller => Navigation Controller2=> C controller.

当我从C控制器切换到A控制器时,我有导航控制器1和2的导航栏。 当我离开C控​​制器时,我试图做到这一点:

-(void)viewDidDisappear:(BOOL)animated{
    [super viewDidDisappear:(BOOL)animated];
    NSLog(@"Disappeared!");
    [self.navigationController setNavigationBarHidden:YES];
}

但我总是遇到同样的问题。 任何提示,想法? 谢谢你的帮助。

2 个答案:

答案 0 :(得分:3)

我非常怀疑你需要两个导航控制器,但是如果你认为这样做,你可以通过调用相应视图控制器中setNavigationBarHidden:animated:上的self.navigationController隐藏一个控制器的导航栏。

答案 1 :(得分:1)

为什么要互相推送UINavigationControllers?这不是一个好的iOS编程实践。您可以在1st Nav上将第二个Nav Controller显示为modal controller。控制器,并在完成任务后将其解雇。