swift - 从 AppDelegate 访问 UINavigationController

标签 swift swift3 uinavigationcontroller appdelegate

我需要在 AppDelegate 中访问 UINavigationController

这是我尝试过的

func applicationDidBecomeActive(_ application: UIApplication) {
    let syncManager = SyncManager()
    let navigationController: UINavigationController = UIStoryboard(
        name: "Main",
        bundle: nil
    ).instantiateViewController(withIdentifier: "MainNavigationController") as! UINavigationController
    syncManager.setNavigationController(navigationController)
    syncManager.sync()
}

这似乎行不通。

如何从 AppDelegate 访问 UINavigationController

谢谢。

更新

我正在使用这个 library当应用程序处于事件状态时在应用程序中显示通知。该库需要一个 navigationController 实例来显示通知。

当我在 AppDelegate 中使用此代码时,不会显示通知,但当我在 ViewController 中使用时,会显示通知。

最佳答案

试试这个:

let navigationController = application.windows[0].rootViewController as! UINavigationController

关于swift - 从 AppDelegate 访问 UINavigationController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47201733/

相关文章:

iOS 10 UNNotificationAction,可以从后台模式切换到前台模式吗?

ios - 火存储 : How to get the object data from firestore in IOS (Swift) and display it in tableview

Swift3:将字符串转换为以空字符结尾的 C 字符串的正确方法

iphone - 加载 View 时导航栏跳跃

ios - 如何在不将其设为我的 Root View Controller 的情况下从 View Controller 切换到 Split View Controller

ios - 如何向同一方向滑动两个以上的 View ?滑动到其他 View 时是否可以传递相同数量的数据?

swift - `let case(value)` 和 `case(let value)` 之间的区别(Swift)

ios - 以更少的步骤从原始数据到 UIImagePNGRepresentation

ios - 成功将字符串值存储到钥匙串(keychain),但始终无法将其读出

ios - 一般删除导航堆栈中的自定义 UIViewController 类