objective-c - 在 OS X 应用程序中,如何在以编程方式创建窗口时使用自动布局?

标签 objective-c swift macos nswindow nsviewcontroller

我的 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 也会自动调整大小?

最佳答案

关于objective-c - 在 OS X 应用程序中,如何在以编程方式创建窗口时使用自动布局?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44174009/

相关文章:

objective-c - “setText:已弃用”警告

ios - App Delegate的应用程序:didReceiveLocalNotification: not called

iphone - 如何将 NSObject 显示为 UIView?

ios - Swift:Nil 与返回类型 String 不兼容

ios - 从核心数据中获取最新值并将其分配给标签。 swift

ios - 无法识别的选择器 - 异常

windows - 如何将 Cocoa/Mac 应用程序移植到 Windows?

objective-c - 在我的 iphone 应用程序中,我想提供导入 Facebook、gmail 联系人的功能

c++ - Clang 模糊调用(int、float、double)

python - 在 OSX 上安装 PyLucene JCC 时出错