swift - 将 NSViewController 设置为全屏

标签 swift macos cocoa

我的 ViewController 包含一个按钮。当按下按钮时,它执行以下行:

self.window?.styleMask = NSFullScreenWindowMask
self.window?.setFrame((NSScreen.mainScreen()?.frame)!, display: true, animate: true)
self.window?.contentViewController = Game()

理想情况下,当按下按钮时,窗口内容将被名为 Game 的新 NSViewController 替换。

即使窗口被动画化为全屏,游戏也会显示在屏幕角落(只有 500*300px)并且窗口不处于全屏模式。如何更改窗口的内容并将其设置为全屏样式?

最佳答案

只需将 NSView 的自动调整大小掩码设置为可调整宽度和高度:

self.view.autoresizingMask = NSViewHeightSizable | NSViewWidthSizable;

关于swift - 将 NSViewController 设置为全屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35897800/

相关文章:

macos - 为什么 NSSecureTextField 不支持某些语言的字符串?

swift - 如何使用 MDCSnackbarMessage 完成处理程序?

macos - Home Brew 安装包获取无法将 HEAD 解析为修订版

java - Mac OS X 上的 Jenkins 速度缓慢并且崩溃

objective-c - 更改 NSTableView 备用行颜色

objective-c - 创建不会阻止与其他窗口交互的工作表

ios - 如何固定 LiquidFloatingActionButton 在 UITableView 中的位置?

swift - 使用 Swift 3 对 Snowboy API 的 RESTful API 调用

ios - 将多个 UILabels 居中放置在一行上

iphone - 字符串操作