在 AppDelegate (Swift) 中切换视图

Posted

技术标签:

【中文标题】在 AppDelegate (Swift) 中切换视图【英文标题】:Switch View in AppDelegate (Swift) 【发布时间】:2016-01-22 14:16:33 【问题描述】:

我需要根据用户是否注册来设置我的应用程序的起始视图。 这将在 AppDelegate 中完成:

       func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool 
            if(isUserRegistrated() == true)
                let vc : AnyObject! = self.storyboard.instantiateViewControllerWithIdentifier("isRegistrated")
                    self.showViewController(vc as UIViewController, sender: vc)
            
            else
                let vc : AnyObject! = self.storyboard.instantiateViewControllerWithIdentifier("isNOTRegistrated")
                    self.showViewController(vc as UIViewController, sender: vc)
            
       

此时我得到了错误: “AppDelegate 类型的值没有情节提要的成员”

有什么结论吗?

【问题讨论】:

你注册你的故事板了吗?? 如何注册我的故事板? 【参考方案1】:

示例:

let storyboard = UIStoryboard(name: "MyStoryboardName", bundle: nil)
let vc = storyboard.instantiateViewControllerWithIdentifier("someViewController") as! UIViewController
self.presentViewController(vc, animated: true, completion: nil)

【讨论】:

当我这样做时,我收到错误:“ Instants member storyboard cannot be used on type AppDelegate”

以上是关于在 AppDelegate (Swift) 中切换视图的主要内容,如果未能解决你的问题,请参考以下文章

Swift - 在 AppDelegate 中实例化视图控制器

Swift 在 AppDelegate 中延迟设置 rootViewController

swift中AppDelegate和Context的作用是啥?

我必须在 AppDelegate.swift 文件中写任何东西吗?

如何在 Swift 中的 AppDelegate 中抓取 Viewcontroller

在 Swift 5.0 中从 AppDelegate 实例化窗口失败 [重复]