我的 OS X 应用程序尝试以编程方式创建一个窗口,如下所示(由我之前看到的另一个 SO 问题建议):
class MyViewController: NSViewController {
override func loadView() {
let view = NSView(frame: NSMakeRect(0,0,300,100))
view.wantsLayer = true
view.layer?.borderWidth = 2
view.layer?.borderColor = NSColor.red.cgColor
self.view = view
}
}
let viewController = MyViewController()
let window = NSWindow(contentRect: someFrame, styleMask: [.resizable, .closable, .miniaturizable, .titled], backing: NSBackingStoreType.buffered, defer: false)
window.contentView?.addSubview(viewController.view)
window.makeKeyAndOrderFront(nil)
我可以通过上面的代码成功创建窗口。但是,我的问题是...如何使在 View Controller 内的 loadView
中创建的 View 与窗口的内容 View 大小相同?
现在,它会创建具有固定编号 (0, 0, 300, 100) 的 View 。如何使用自动布局使此 View 与窗口大小相同,以便在调整窗口大小时,此 View 也会自动调整大小?
最佳答案
有人会认为 Apple 会记录这样的事情。他们确实做到了:
关于objective-c - 在 OS X 应用程序中,如何在以编程方式创建窗口时使用自动布局?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44174009/