Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xcode 第二个窗口的简单显示:OSX&;敏捷的_Xcode_Swift_Macos - Fatal编程技术网

Xcode 第二个窗口的简单显示:OSX&;敏捷的

Xcode 第二个窗口的简单显示:OSX&;敏捷的,xcode,swift,macos,Xcode,Swift,Macos,我正试图找到如何在按下主窗口上的按钮后打开第二个视图/窗口。我已经阅读了segues的相关内容,我可以让第一个窗口显示第二个窗口,但第二个窗口未连接到视图控制器,因此我无法向第二个视图上的任何控件添加任何代码。尽管我可能尝试,但我无法创建SecondViewController.swift文件并将其连接到窗口控制器或视图控制器。我找到的教程都是关于iOS的,我想要的是OSX,这意味着它们之间的差异足以让我无法理解这一点 有人能告诉我怎么做吗 Ta, A.首先创建新文件,如下所示: 在那之后,把

我正试图找到如何在按下主窗口上的按钮后打开第二个视图/窗口。我已经阅读了segues的相关内容,我可以让第一个窗口显示第二个窗口,但第二个窗口未连接到视图控制器,因此我无法向第二个视图上的任何控件添加任何代码。尽管我可能尝试,但我无法创建SecondViewController.swift文件并将其连接到窗口控制器或视图控制器。我找到的教程都是关于iOS的,我想要的是OSX,这意味着它们之间的差异足以让我无法理解这一点

有人能告诉我怎么做吗

Ta, A.

首先创建新文件,如下所示:

在那之后,把这些代码放到你的类中,这样就可以了

class SecondWindowController: NSWindowController {

    convenience init() {
        self.init(windowNibName: "SecondWindowController")
    }
}

class ViewController: NSViewController {

    private var secondWindowController: SecondWindowController?

    @IBAction func showSecondWindow(sender: AnyObject) {
        if secondWindowController == nil {
            secondWindowController = SecondWindowController()
        }
        secondWindowController?.showWindow(self)
    }
}

谢谢你,但是运气不好。我怀疑是因为我把代码放错地方了。我有原始的Main.storyboard和与之配套的ViewController.swift,还有与之配套的SecondWindowController.xib和SecondWindowController.swift。我不清楚您给我的代码类是进入两个控制器中的每一个,还是进入主视图控制器中的两个。你能给我看看你的ViewController.swift和你的SecondWindowController.swift吗?它们在不同的文件中,但在那个例子中,看起来它们在同一个文件中,但它们不是,如果这是你的意思的话。明白了。谢谢你。