IOS:推送segue后导航栏消失

Posted

技术标签:

【中文标题】IOS:推送segue后导航栏消失【英文标题】:IOS: Navigation bar disappears after push segue 【发布时间】:2017-02-16 00:11:24 【问题描述】:

每次我执行 show(push) segue 时,文章 VC 都没有显示标题或后退按钮的导航栏。我还检查了导航控制器是否有标题,因为这似乎是某些情况的解决方案。执行 segue 的类只是发送信息。类别是一个枚举。

【问题讨论】:

【参考方案1】:

你必须用另一个 NavigationController 包装你的 articleVC。 或者不使用 segue,您可以使用导航控制器推送它以重用 NavigationBar。

let yourArticleViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "articleViewControllerIdentifier") as! ArticleViewController
self.navigationController?.pushViewController(yourArticleViewController, animated: true)

【讨论】:

View Controller 的 Identifier 和 Storyboard ID 一样吗? @Sak6lab 正是那个 对不起,“那个”是什么?如果我这样做的话,我并不是要对这个问题显得粗鲁。 没问题,@Sak6lab Identifier 就是 Storyboard ID 非常感谢@Juan Curti【参考方案2】:

ArticlesVC 应该嵌入到它自己的导航控制器中。这应该可以解决您的问题。

ios Swift - View Controller - Embedded Navigation Controller

【讨论】:

我能回到透视VC吗? @Sak6lab 是的,你会的。

以上是关于IOS:推送segue后导航栏消失的主要内容,如果未能解决你的问题,请参考以下文章

放松Segue隐藏标签栏

以编程方式推送时导航栏消失

iOS 导航问题:推送 ViewController 后,会导致导航栏显示上一个 ViewController 的导航项

展开 Segue 导致清晰的导航栏

模态segue推动顶部的附加导航栏滑动

禁用转场动画