iOS如何在重新进入应用程序后从AppDelegate导航到rootview

Posted

技术标签:

【中文标题】iOS如何在重新进入应用程序后从AppDelegate导航到rootview【英文标题】:iOS how to navigate from AppDelegate to the rootview after re-entering app 【发布时间】:2015-02-24 10:36:56 【问题描述】:

我对 ios 编程还是比较陌生。

对于我的第一个应用程序,我希望能够处理用户离开并重新进入应用程序的情况。我希望用户总是回到根视图,这是一个导航视图。 (我也希望任何模态视图也被忽略)

这是我目前所做的。它有效,但我很确定这是不对的:

    func applicationWillResignActive(application: UIApplication) 
       self.window!.rootViewController?.dismissViewControllerAnimated(false, completion: nil)      
    

    func applicationDidBecomeActive(application: UIApplication) 
        var vc = self.window!.rootViewController!
        vc.loadView()
    

你能告诉我该怎么做吗?

另外,我尝试获取导航控制器,但是

self.window!.rootviewController!.navigationController

由于某种原因总是为零

【问题讨论】:

【参考方案1】:
presentViewController( UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("YourNavigationControllerID") as! UINavigationController, animated: true, completion: nil)

【讨论】:

感谢您的快速回复!!!我应该把它放在 applicationDidBecomeActive(application: UIApplication) 还是 func applicationWillEnterForeground(application: UIApplication) 中?这也会自动忽略我以前的视图吗? 你为什么不直接在 applicationWillResignActive 关闭最后一个

以上是关于iOS如何在重新进入应用程序后从AppDelegate导航到rootview的主要内容,如果未能解决你的问题,请参考以下文章

如何在截断并保留 ID 列值后从临时表中重新插入记录

应用程序关闭之前/应用程序打开之前的 Swift iOS 9+ [重复]

登录 ios swift 后从 wkwebview 获取令牌

iOS 推送通知 - 删除并重新安装后无推送

与 Facebook iOS SDK 共享后从 Facebook 注销

应用打开后从通知中心移除推送