访问默认窗口颜色可可

时间:2015-05-27 19:19:36

标签: cocoa window nscolor

我在窗口中有一张SKView的键盘图片,如下所示。我希望它所呈现的SKScene的背景颜色与它后面的窗口颜色相同,这样看起来好像键盘只是在窗口中,而不是其他东西那是在窗口。在查阅NSColor文档后,我尝试将SKScene的背景颜色设置为NSColor.windowBackgroundColor()。下面的颜色是我得到的。我假设存在某种错误,因此默认为黑色。话虽这么说,我如何访问窗口的默认颜色?

enter image description here

1 个答案:

答案 0 :(得分:0)

SKView' s allowsTransparency设置为true,然后将SKScene' s backgroundColor设置为NSColor.clearColor()

我认为如果视图不允许透明度,那么使用windowBackgroundColor()会产生黑色,如果视图不透明,则因为它有效地被clearColor()翻译为"意外& #34 ;. windowBackgroundColor()有点奇怪。它不在RGB或灰度色彩空间中,也不能转换为其中任何一种。我猜测SKScene尝试将背景颜色转换为RGB颜色空间,当失败时,它会使用clearColor()作为后备。