我创建了一个没有标题的窗口-
override func windowDidLoad() {
super.windowDidLoad()
self.window?.styleMask = NSBorderlessWindowMask
self.window?.movableByWindowBackground = true
}
我已经设置了 canBecomeKeyWindow -
override var canBecomeKeyWindow:Bool
{
get{
return true
}
}
我已经改变了容器 View 的背景颜色——
override func drawRect(dirtyRect: NSRect) {
super.drawRect(dirtyRect)
var viewcolor = NSColor.whiteColor()
viewcolor.setFill()
NSRectFill(dirtyRect)
}
自定义 View 作为 subview 添加到此容器 View 中,我更改了自定义 View 的背景颜色-
override func drawRect(dirtyRect: NSRect) {
super.drawRect(dirtyRect)
NSColor(SRGBRed: 0.8, green: 0.26, blue: 0.33, alpha:1.0).set()
NSRectFill(self.bounds)
}
现在,当我执行 toggleFullscreen 时-
@IBAction func goFullScreen(sender: AnyObject) {
self.view.window?.toggleFullScreen(sender)
}
整个屏幕区域没有被填满。创建的窗口后面有空白(黑色)背景。该应用程序应填充空间,此屏幕截图中不应有黑色背景
我该如何解决这个问题。感谢您的帮助。
最佳答案
问题是您的窗口无法调整大小。将 styleMask
设置为 NSBorderlessWindowMask
无意中删除了 NSResizableWindowMask
。
您应该将 styleMask
设置为 NSBorderlessWindowMask | NSResizableWindowMask
.
关于macos - 为什么窗口背景在全屏时保持黑色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30787650/