如何隐藏故事板使用一个UINavigationController的工具栏?(How can I h

2019-09-20 22:44发布

我有一个具有若干意见我推过一个故事板iOS应用。 我有选择的“显示工具栏”选项,然后在我的视图层次填充一个UINavigationController。

说我认为流动是3次,A,B,和C:

View A --(push)--> View B --(push)--> View C

查看A是一个普通视图控制器,以用于推动查看B.查看B中的工具栏上的按钮是一个表控制器,所以我想在这里隐藏工具栏。 视图C是像观另一视图,其中要显示所需的工具栏。

在Xcode /故事板,如果在查看BI选中“隐藏的推底部栏”,它正是这么做的 - 底部栏隐藏查看B.同样的,如果我选择了“底栏”中选择选项“无”,没有酒吧为查看B.良好。

这里是我的问题:无论我做什么,使用视图B之前任一选项,我的工具栏不回来查看。如果我设置视图C的工具栏上的推断(和推送取消选中隐藏)它没有显示,也没有如果我手动将它设置为“工具栏”。

有任何想法吗?

Answer 1:

正如@佐尔坦说,故事情节不提供完整的答案。

设置self.navigationController.toolbarHidden = YES / NO对viewDidLoad中或viewWillAppear中是功能性的,但难看(黑色矩形视图过渡动画中出现代替工具栏)。

这里就是我所做的视图B控制器(用于查看C中的倒数)来模拟在故事板“隐藏推送”选项的动画平滑度:

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

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


Answer 2:

我不认为你可以在故事板纯粹做。 但是你可以将其设置为始终显示,穿上它的按钮,每查看您希望它出现在你可以调用self.navigationController.toolbarHidden = YES; 当装载的ViewController中,你不想在工具栏出现。 之后,如果另一个VC出现在你确实需要的工具栏,只需设置toolbarHidden为NO。



文章来源: How can I hide the toolbar of a UINavigationController using storyboards?