2017-03-06 55 views
0

我正在用故事板,我有一个包含NSTableView的一些其他控件的自定义视图MacOS的一个项目。如何去除NSTableView的某些部分上的透明度?

的customView背景着色在viewWillAppear中():

backgroundCustomView.layer?.backgroundColor = NSColor.white.cgColor 

的问题是,似乎里面他们一些半透明部分NSTableView的的项目。

我想喜欢的NSTableView的出现没有任何透明度(这是因为我把NSTableView的下一个自定义视图的原因)。

我试着在IB改变所有东西,我认为没有任何的运气可能相关的选项。

enter image description here

PS 的项目之间的不连续的透光是由信元间隔的选择,由于。

回答

1

你需要指定查看需要一个层作为其后备存储

backgroundCustomView.wantsLayer = true 
backgroundCustomView.layer?.backgroundColor = NSColor.white.cgColor 
wantsLayer财产文档

更多信息page

+0

谢谢阿道夫,我加的发言,但不幸的是,NSTableView的继续表现那个外表。也许我在IB做错了事。我忘记提到的问题是,该应用程序作为状态栏项目运行,并且该视图作为NSPopover()在菜单栏中打开。对不起,错过了信息。 – Cue

+0

做到这一点,但现在与主视图(NSViewControler的视图)。像self.view.wantsLayer东西=真 – Adolfo

+0

谢谢你这么多阿道夫的信息。同样实现这一点,我无法获得被禁用的透明度。我查了这个文件,但它不似乎适用于我的情况https://developer.apple.com/reference/appkit/nsvisualeffectview – Cue