UINavigationController 中的 UIPageViewController,NavigationBar 行为不正确
Posted
技术标签:
【中文标题】UINavigationController 中的 UIPageViewController,NavigationBar 行为不正确【英文标题】:UIPageViewController within UINavigationController, NavigationBar behaves not correct 【发布时间】:2013-11-19 00:16:58 【问题描述】:我有一个 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 上。我猜在我查看 UIViewController2 时 UIViewController1 已经出现了,突然它收到了显示 UINavigationBar 的通知。
将命令放入 UINavigationBarDidAppear 并不能解决问题 :-( 有人可以帮帮我吗?
【问题讨论】:
【参考方案1】:找到了答案。实际上一切正常。我猜我只是被我的意大利面条代码愚弄了。
我没有注意到我已经在 loadview 方法中隐藏了导航栏,然后又在 viewWillAppear 方法中隐藏了导航栏。在 loadView 中删除它后,它的工作完美!
【讨论】:
以上是关于UINavigationController 中的 UIPageViewController,NavigationBar 行为不正确的主要内容,如果未能解决你的问题,请参考以下文章
(Swift) 在嵌套在 Main UINavigationController 中的 UINavigationController 和 UITabController 之间切换
UINavigationController 中的常量 UIBarButtonItem
UINavigationController 中的 setAlpha
UINavigationController:调整大小动画中的标题跳转