Ios 将场景与UIViewController链接

Ios 将场景与UIViewController链接,ios,swift,uiviewcontroller,sprite-kit,Ios,Swift,Uiviewcontroller,Sprite Kit,我正在尝试将SKScene与UIViewController链接。现在我知道这个问题以前已经发布过了,但是没有一个是用Swift发布的,我的整个游戏都是用Swift编写的。无论如何,当您第一次创建SpriteKit游戏时,会生成两个默认文件:GameSecene.swift和GameViewController.swift。这两者似乎通过以下方式“联系在一起”: extension SKNode { class func unarchiveFromFile(file : NSSt

我正在尝试将SKScene与UIViewController链接。现在我知道这个问题以前已经发布过了,但是没有一个是用Swift发布的,我的整个游戏都是用Swift编写的。无论如何,当您第一次创建SpriteKit游戏时,会生成两个默认文件:GameSecene.swift和GameViewController.swift。这两者似乎通过以下方式“联系在一起”:

    extension SKNode {
    class func unarchiveFromFile(file : NSString) -> SKNode? {
        if let path = NSBundle.mainBundle().pathForResource(file, ofType: "sks") {
            var sceneData = NSData(contentsOfFile: path, options: .DataReadingMappedIfSafe, error: nil)!
            var archiver = NSKeyedUnarchiver(forReadingWithData: sceneData)

            archiver.setClass(self.classForKeyedUnarchiver(), forClassName: "SKScene")
            let scene = archiver.decodeObjectForKey(NSKeyedArchiveRootObjectKey) as MainMenuScene
            archiver.finishDecoding()
            return scene
        } else {
            return nil
        }
    }
}

我试着自己制作一个MainMenuViewController.swift来实现这一点。然后我将上面的代码粘贴到文件中。然后我通过Interface Builder连接,这意味着我将ViewController的类设置为MainMenuViewController.swift。这一切似乎都很好,但当我编译所有内容时,我得到了一个错误,即“unarchiveFromFile”的重新声明无效。如何使默认生成的文件与我的主菜单场景“链接”起来,产生相同的效果?

它们都不在swift中?我不敢苟同: