gpt4 book ai didi

swift - 如何在 NSApplicationDelegate 上加载 NSViewController

转载 作者:可可西里 更新时间:2023-11-01 01:37:45 30 4
gpt4 key购买 nike

我正在尝试在我的 appDelegate 类上加载一个 ViewController。像这样:

class AppDelegate: NSObject, NSApplicationDelegate {

@IBOutlet weak var window: NSWindow!

var viewController = HomeViewController()

func applicationDidFinishLaunching(aNotification: NSNotification) {
self.window.backgroundColor = NSColor(rgba: "#02303A")
self.viewController.view.frame = CGRectMake(0, 0, CGRectGetWidth(self.window.frame), CGRectGetHeight(self.window.frame))
self.window.contentView?.addSubview(self.viewController.view)
}

}

我的 View Controller 非常简单,只是:

import PureLayout

class HomeViewController : NSViewController {

let search : NSSearchField = {
let search = NSSearchField.newAutoLayoutView()
return search
}()

override func loadView() {
super.loadView()
self.view.layer?.backgroundColor = NSColor.blackColor().CGColor
self.view.addSubview(search)
}

}

但是当我编译项目时,日志返回:

Error

具有完整源代码的存储库:Github

有人知道是什么吗?我在我的 iOS 项目上这样做,效果很好。

最佳答案

  1. 您没有属于您的 View Controller 的 xib 文件,因此第一步是为 View 添加一个新文件:

enter image description here

  1. 在您新创建的 xib 文件中,选择 File's Owner 占位符,然后在 Inspector 中,将其自定义类设置为您的 View Controller 子类:

enter image description here

  1. 最后,将 View Controller (文件所有者) View 导出连接到自定义 View 对象。

enter image description here

(在此 View 中为 View Controller 构建用户界面,而不是在主 nib 中构建用户界面。)

关于swift - 如何在 NSApplicationDelegate 上加载 NSViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34373070/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com