在 swift 4 中这失败了
self.window.styleMask |= NSWindowStyleMask.fullSizeContentView
我还想撤消
self.window.styleMask ^= NSWindowStyleMask.fullSizeContentView
正如我在 Objective-c 中所做的那样
最佳答案
在 Swift 中,NSWindowStyleMask
(在 Swift 4 中,NSWindow.StyleMask
)是 OptionSet
。您需要使用为 SetAlgebra
定义的方法.
swift 4:
self.window!.styleMask.formUnion(NSWindow.StyleMask.fullSizeContentView)
self.window!.styleMask.formSymmetricDifference(NSWindow.StyleMask.fullSizeContentView)
下面的代码可以在 Swift 3 和 Swift 4 中编译:
self.window!.styleMask.formUnion(.fullSizeContentView)
self.window!.styleMask.formSymmetricDifference(.fullSizeContentView)
关于swift - |= 运算符不能应用于两个 NSWindowMask 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44913589/