我有一个故事板iOS应用程序,我有很多观点.我有一个UINavigationController,选中了“显示工具栏”选项,然后填充整个视图层次结构.
假设我的视图流是3个视图,A,B和C:
View A --(push)--> View B --(push)--> View C
视图A是普通视图控制器,工具栏上有一个按钮用于推动视图B.
视图B是一个表控制器,所以我想在这里隐藏工具栏.
视图C是另一个视图,如视图A,需要显示工具栏.
在Xcode / Storyboard中,如果在View BI中选择“隐藏推送时的底部栏”,它就会这样做 – 底部栏对于视图B是隐藏的.同样,如果我为“底栏”选择选项选择“无”,则没有查看B.好吧.
这是我的问题:无论我做什么,使用视图B的任一选项,我的工具栏都不会返回到视图C.如果我将View C的工具栏设置为推断(并且取消选中隐藏在推送上)它不显示,也不显示如果我手动将其设置为“工具栏”.
有任何想法吗?
解决方法
正如@Zoltán所说,Storyboard没有提供完整的答案.
在viewDidLoad或viewWillAppear上设置self.navigationController.toolbarHidden = YES / NO是有效的,但很丑(在视图过渡动画期间,黑色矩形代替工具栏).
以下是我为View B控制器(以及View C的反转)所做的操作,以模仿故事板中“隐藏推送”选项的动画平滑度:
- (void)viewWillAppear:(BOOL)animated { [self.navigationController setToolbarHidden:YES animated:YES]; } - (void)viewWilldisappear:(BOOL)animated { [self.navigationController setToolbarHidden:NO animated:YES]; }