您应该覆盖
loadView
,并在那里添加标签
override func loadView() {
let view = NSView(frame: NSMakeRect(0,0,400,400))
self.view = view
let label = NSTextField(labelWithString: "Hello, World!")
label.frame = NSRect(x: 20, y: 100, width: 200, height: 20)
view.addSubview(label)
}
这是因为
loadView
查找一个笔尖文件,该文件可能是您没有也不想使用的。
的文档
NSViewController
说:
但在macOS 10.10及更高版本中
loadView()
方法自动查找与视图控制器同名的nib文件。
另请参阅的文档
loadView
:
例如,如果您有一个名为MyViewController的视图控制器子类和一个同名的nib文件,则可以使用方便的初始化模式
[[MyViewController alloc] init]
。