半透明的NSView

3
我有一个NSView在NSWindow中,NSWindow是标准的Mac灰色/米色。
我想让NSView略微半透明和灰色(例如,alpha为0.2的灰色),以便NSWindow的背景(米色)显示出来。
如果我在drawRect中绘制一个矩形,alpha值会被忽略并且始终为1。
在iPhone上,当发生这种情况时,我将UIView的opaque属性设置为NO,但是NSView没有这样的属性。
我将NSWindow的opaque属性设置为NO,这使得NSView接受透明度,但使NSView下面的NSWindow完全透明,我可以看到桌面。
1个回答

3
在iPhone上发生这种情况时,我将UIView的opaque属性设置为NO,但是NSView没有这样的属性。它确实有,但是它是只读的,所以您只能通过在子类中重写来更改它。此外,默认情况下它是NO,因此您不需要也不想这样做。您是否使视图支持层?setAlphaValue:不适用于没有层的视图;实际上,文档说如果尝试设置其alpha值,则没有图层的视图会抛出异常。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接