如何解决SWIFT 5-调用用于更改情节提要的“显示”方法后,导航栏消失
我是Swift的新手,遇到了以下问题: 我加载主故事板,如果用户为零,则加载其他场景的其他故事板。 为此,我运行以下代码:
override func viewDidAppear(_ animated: Bool) {
if (true) {
let loginScene = UIStoryboard(name: "NilUser",bundle: nil).instantiateViewController(withIdentifier: "loginScene") as! LoginController
loginScene.modalPresentationStyle = .fullScreen
show(loginScene,sender: nil)
}
}
我知道if语句始终为true,此刻我想要它。 我还检查了登录场景是否为初始场景,但即使这样,导航栏也不会显示。 问题是,现在在登录场景中我看不到导航栏,也无法理解为什么。 我能做什么?如果您需要更多说明,我会给您。 谢谢!
解决方法
据我了解
- 您的主故事板因此没有NavigationController:
self.navigationController?.pushViewController(loginScene,animated:true)
自self.navigationController以来不起作用?是零
- 您的NilUser故事板似乎在UINavigationController中嵌入了loginScene(UIViewController)吗?!?并且您希望这个UINavigationController会出现
通过致电
let loginScene = UIStoryboard(name: "NilUser",bundle: nil).instantiateViewController(withIdentifier: "loginScene") as! LoginController
直接实例化LoginController而不使用UINavigationController,因此应将UINavigationController设置为初始ViewController并尝试
let storyboard = UIStoryboard(name: "NilUser",bundle: nil)
guard let navigationController = storyboard.instantiateInitialViewController() else {
// initial UINavigationController not found
return
}
navigationController.modalPresentationStyle = .fullScreen
show(navigationController,sender: nil)
如果我错了,我可能已经错过了您的设置。
,尝试
let loginScene = UIStoryboard(name:“ NilUser”,捆绑: nil).instantiateViewController(withIdentifier:“ loginScene”)为! LoginController
RewriteRule ^index\.php\?((forums|threads|members|resources|posts|help|tags|attachments).*)$ /forum/$1 [R=301,L]
,
尝试在控制器中添加以下代码:
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
navigationController?.navigationBar.isHidden = false
navigationController?.navigationBar.barStyle = .default
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。