编程转换丢失导航栏
Posted
技术标签:
【中文标题】编程转换丢失导航栏【英文标题】:Programming Transition Loses Navigation Bar 【发布时间】:2015-09-03 15:43:51 【问题描述】:我的main.storyboard
文件有问题。我更改了我的应用程序的设置,以便开始屏幕是 main.storyboard 文件,而不是 LaunchScreen.xib
。第一个ViewController
是NavigationController
,第二个是我的SplashScreeViewController
。 (我在情节提要中创建了自己的启动画面,以便我可以使用其他代码对其进行更改。)我在启动画面中使用了一行代码,以便稍后过渡到第二个视图控制器。这里是:
var controller:UIViewController = self.storyboard?.instantiateViewControllerWithIdentifier("Second") as! ViewController
controller.modalTransitionStyle = .CrossDissolve
self.presentViewController(controller, animated: true, completion: nil)
由于某种原因,当我转换到第二个 ViewController
时,应该在顶部(第二个 ViewController
)的导航栏不存在,与 main.storyboard
文件中显示的相反.我尝试在启动画面中添加一个不可见的禁用按钮,以在两个视图控制器之间添加连接,因此在第二个视图控制器中添加了一个导航栏,但是当启动画面自行转换时,第二个视图控制器上不会出现导航栏.
有没有一种方法可以在我的第二个视图控制器上拥有一个导航栏,而无需将其拖入,也无需对其进行编程?当您在控制器之间创建新连接时,我想使用 Xcode 提供的那个。
提前感谢所有回复的人。
*(对于没有图片来帮助描述我的问题,我深表歉意。我没有足够的“声誉”来这样做。)
【问题讨论】:
【参考方案1】:您需要将 Second
视图控制器嵌入到导航控制器上,然后实例化该导航控制器。
【讨论】:
【参考方案2】:这可能会解决问题 - 当您可能希望使用 pushViewController
从初始导航控制器推送视图控制器时,您似乎正在呈现模态视图控制器
【讨论】:
以上是关于编程转换丢失导航栏的主要内容,如果未能解决你的问题,请参考以下文章