显示 UINavigationBar 不起作用

Posted

技术标签:

【中文标题】显示 UINavigationBar 不起作用【英文标题】:Showing UINavigationBar not working 【发布时间】:2014-06-15 19:43:59 【问题描述】:

我在UINavigationController 中有一个UITabBarController,它最初在需要选项卡时在视图之前隐藏了导航栏,但是当我尝试在文件中显示导航栏时没有任何反应,如果我在之前这样做过渡然后它出现在我在两个控制器之间推送之前有没有办法停止这种效果并使其在下一个 ViewController 加载时出现导航栏?

这不是特定于操作系统的问题,因为它发生在 ios 6 和 7 中

【问题讨论】:

【参考方案1】:

UITabBarController 类并非设计为用作UINavigationController 的子类,这可能解释了为什么您会看到奇怪的行为。如果您绝对需要 UINavigationController 中的标签栏,您可能必须自己动手。否则,将 UITabBarController 设为窗口的根视图控制器并使用导航控制器填充它。

【讨论】:

我需要UINavigationBar最初隐藏,因为只有使用它才能实现推送动画 您可能需要将导航控制器嵌套在标签栏控制器中,而不是相反。 @nhgrif 我不希望我推送的第一个视图出现在选项卡中 那么你需要一个模态segue到一个标签栏控制器,其中嵌套了导航控制器。 @rhgrif 我将如何进行模态搜索【参考方案2】:

尽管给予 conmulligan 功劳,但还是设法解决了这个问题,因为他给了我一个想法,即隐藏导航栏并将视图控制器嵌入新的导航控制器中,这样就有了一个全新的导航栏

【讨论】:

以上是关于显示 UINavigationBar 不起作用的主要内容,如果未能解决你的问题,请参考以下文章

UINavigationbar 通过外观设置阴影不起作用

设置 UINavigationbar 的标题不起作用

UINavigationBar 的样式在 UIViewController 中不起作用

UINavigationBar.appearance().tintColor 在 Swift 中不起作用

弹出框bartintcolor中的uinavigationbar uiappearance不起作用

设置 UINavigationBar 外观 whenContainedInInstancesOf 到我的视图控制器不起作用