gpt4 book ai didi

ios - Swift 3 - 为什么我的导航栏不显示?

转载 作者:搜寻专家 更新时间:2023-11-01 06:02:31 27 4
gpt4 key购买 nike

我有一个简单的应用程序来测试 rest api 的推送通知。我想在应用程序中显示导航栏,但它不起作用。在我的 AppDelegate 中,我有以下代码:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
self.registerForPushNotifications()
let url = "dev"
UserDefaults.standard.setValue(FFHelper.url(slug: url.slug()), forKey: "api-url")
var vcString = "loginView"
if KeychainSwift().get("auth-token") != nil {
vcString = "notificationsTable"
}
let initialVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: vcString)
initialVC.navigationController?.navigationBar.isHidden = false
initialVC.navigationController?.setNavigationBarHidden(false, animated: true)
window?.rootViewController = initialVC
window?.makeKeyAndVisible()
return true
}

在 Storyboard 中,导航栏也被启用: enter image description here最后,在 viewController 中,我做了同样的事情:

override func viewWillAppear(_ animated: Bool) {
self.navigationController?.setNavigationBarHidden(false, animated: animated)
self.navigationController?.navigationBar.isHidden = false
super.viewWillAppear(animated)
}

但在启动应用程序后,导航栏仍然没有显示: enter image description here谁能告诉我这是为什么?

最佳答案

你正在显示 vcString 是你的 LoginVC ,

您需要使用 NavigationController 标识符,例如 loginView

显示前需要嵌入NavigationControler

let initialVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: vcString)

let navi = UINavigationController.init(rootViewController: initialVC)

  window?.rootViewController = navi

关于ios - Swift 3 - 为什么我的导航栏不显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45407806/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com