如何从窗口控制器中引用视图?

时间:2018-07-18 09:38:18

标签: swift xcode macos

我有一个带工具栏的窗口控制器。我也有一个包含一些视图的视图控制器。如何从我的窗口控制器中的视图控制器引用视图?我仍在学习macOS的开发,并且我错过了更大的画面,即代码的结构和类之间的交互方式。

我现在的具体问题是:使用XCode 9.4.1,我有一个带有工具栏和按钮的窗口。这就是我的WindowsController.swift的样子:

import Cocoa

class WindowController: NSWindowController {
    override func windowDidLoad() {
        super.windowDidLoad()
        window?.titleVisibility = .hidden
    }

    @IBAction func startExport(_ sender: NSButton) {
        print("Start Export")
    }
}

在ViewControllerScene中,有一个WKWebView正在加载网页。当按下工具栏中的按钮时,我想调用该Web Views takeSnapshot方法。因此,我需要在WindowsController.swift中对该Web View进行引用,但是在助手编辑器中通过控制将Web View从情节提要拖动到WindowsController.swift中并不允许我创建该插座。

1 个答案:

答案 0 :(得分:1)

此:

let vc = contentViewController as? ViewController

将带您进入视图控制器。