UINavigationController中的UIPageViewController,NavigationBar行为不正确

时间:2013-11-19 00:16:59

标签: ios uinavigationcontroller uinavigationbar autolayout uipageviewcontroller

我有一个uinavigationcontroller,我用UIViewController1,UIViewcontroller2推送UIPageViewController,....! 我想在UIViewController1上安装导航栏,但在其他UIViewController上没有。 所以在第一个UIViewController1上我会:

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];
    [self.navigationController setNavigationBarHidden:NO animated:NO];
}

和另一个UIViewController2,UIViewController3,....

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];
    [self.navigationController YES animated:NO];
}

当我向前迈进时,一切正常!但是如果我从UIViewController3移动到UIViewController2后向后滑动,突然导航栏已经出现在UIViewController2上。我猜UIViewController1已经出现在我正在寻找UIViewController2时突然它会收到显示UINavigationBar的通知。

将命令放入UINavigationBarDidAppear并不能解决问题:-( 有人可以帮助我吗?

1 个答案:

答案 0 :(得分:-1)

找到答案。实际上一切正常。我只是被我的Spaghetti Code愚弄了。

我没有注意到我已经在loadview方法中隐藏了导航栏,然后又在viewWillAppear方法中隐藏了导航栏。删除loadView中的一个后它完美运行!