iOS - 导航栏隐藏/显示
Posted
技术标签:
【中文标题】iOS - 导航栏隐藏/显示【英文标题】:iOS - NavigationBar hide/show 【发布时间】:2015-01-01 10:34:50 【问题描述】:我有一个大师viewController
和许多细节viewController
。大师viewController
没有任何UINavigationBar
,但细节viewController
有UINavigationBar
。所以我有一些问题。当我从 detailVC 滑动到 masterVC UINavigationBar
隐藏在 detailVC
你有什么解决办法吗?
我使用这些方法(大师viewController
)
-(void)viewWillAppear:(BOOL)animated
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:YES];
(详情viewController
)
-(void)viewWillAppear:(BOOL)animated
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:NO animated:YES];
【问题讨论】:
你不需要这样处理,UINavigationController会为你做。我认为你的代码有问题。你能告诉我你是如何从masterVC推送到detailVC的吗? NoteTableViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"noteID"]; [self.navigationController pushViewController:vc 动画:YES]; 这是推送到detailVC的代码 是的,没错。您提供的 gif 效果很好。怎么了? navigationController 用于这种方式来显示 stack 类层次结构。 当滑动并打破detailVC。几次后navigationBar 隐藏在detailVC 中。然后我必须重新启动应用程序,因为我无法通过任何 vc 【参考方案1】:终于
我已经解决了这个问题。
我在 viewDidAppear 方法中为 firstVC 写了 UINavigationBar 隐藏代码。
-(void)viewDidAppear:(BOOL)动画
[super viewDidAppear:animated]; [self.navigationController setNavigationBarHidden:YES animated:YES];
【讨论】:
以上是关于iOS - 导航栏隐藏/显示的主要内容,如果未能解决你的问题,请参考以下文章