隐藏的导航栏和更改的应用程序流程 - swift

Posted

技术标签:

【中文标题】隐藏的导航栏和更改的应用程序流程 - swift【英文标题】:Hidden navigation bar and changed application flow - swift 【发布时间】:2018-07-25 11:53:06 【问题描述】:

我可能阅读了整个互联网,但找不到解决方案,也许我不知道此功能的正确名称。 通常导航栏在每个 VC 上都是可见的,并且应用程序中的每个新视图都来自设备的右侧。突然间,我的应用程序中的导航栏变得不可见,新的视图开始从设备底部传来。如何恢复到之前的设置?实际上我不知道是哪个函数导致了这种变化,以及在哪里可以把它改回来。

感谢您的帮助。

【问题讨论】:

【参考方案1】:

我认为假设的问题是,您开始使用 present modally 您的控制器而不是 push

如果你正在推动控制器,比如

self.navigationController?.pushViewController(viewController, animated: true)

比你的navigationBar 显示。如果您以模态方式呈现,例如

self.presentViewController(vc, animated: true, completion: nil)

它是从下方出现的,并且没有导航控制器。 请检查 What's the difference between all the Selection Segues?

我建议您在提问之前阅读有关 ios 导航和基本内容的文档

【讨论】:

感谢您的回答。我不知道这个问题可能与 segues 有关,因为我在默认 segues 设置上构建了我的应用程序并且没有进行任何更改。我只使用了显示转场和一个根(在导航控制器和根视图控制器之间),所以检查转场并没有解决我的问题。该应用程序似乎忽略了我的导航控制器。无论如何,感谢您的帮助。 @MartynaWiśnik 在这种情况下检查故事板上的initial view controller。它应该是 - 您的导航控制器,带有根视图控制器,而不仅仅是 uiviewcontrolelr

以上是关于隐藏的导航栏和更改的应用程序流程 - swift的主要内容,如果未能解决你的问题,请参考以下文章

Android 显示、隐藏状态栏和导航栏

在 iPhone X 上,分别控制显示/隐藏导航栏和状态栏

为啥ios中的状态栏和导航栏背景颜色不同

隐藏导航栏和内容之间的分隔线

Swift - 使用导航栏和标签栏获取 viewController 的大小

隐藏状态栏和导航栏位置