代码之家  ›  专栏  ›  技术社区  ›  Rick de Jong

从App Delegate打开导航控制器

  •  1
  • Rick de Jong  · 技术社区  · 7 年前

    结束 当前视图。(所以打开它模式)。

    func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool -方法?

    提前感谢!

    2 回复  |  直到 7 年前
        1
  •  2
  •   Robert D. Mogos    7 年前

    window?.rootViewController?.present(yourViewController, animated: true, completion: nil)
    

    否则,它应该在所有情况下都有效:

    UIApplication.shared.keyWindow?.rootViewController?.present(yourViewController, animated: true, completion: nil)
    
        2
  •  1
  •   Duncan C    7 年前

    如果提交请求的视图控制器应该显示模式,我建议使用不同的方法。我建议在通知中心定义一个通知,用于通知当前视图控制器。

    addObserver(forName:object:queue:using:) 遵守您的通知。

    Notification post(name:object:) 来自您的应用程序代表的 application(_:open:options:) 当您获得预期的URL时。