Cocoa 基于视图的NSTableView和模糊浮动组行

Cocoa 基于视图的NSTableView和模糊浮动组行,cocoa,nstableview,Cocoa,Nstableview,我有一个带有浮动组行的NSTableView,我可以轻松地使其透明。但是,无论我做什么,将rowView backgroundFilters设置为具有CIGaussianBlur都没有效果 包含NSTableView(以及公司的NSScrollView和NSClipView)的视图需要一个图层。我已经在didAddRowView中确认,rowView有一个带有背景过滤器集的层 我可以用任何其他普通NSView复制这种模糊,但应用到tableview行视图时,它就不起作用了。我只是想了解为什么,我

我有一个带有浮动组行的NSTableView,我可以轻松地使其透明。但是,无论我做什么,将rowView backgroundFilters设置为具有CIGaussianBlur都没有效果

包含NSTableView(以及公司的NSScrollView和NSClipView)的视图需要一个图层。我已经在didAddRowView中确认,rowView有一个带有背景过滤器集的层


我可以用任何其他普通NSView复制这种模糊,但应用到tableview行视图时,它就不起作用了。我只是想了解为什么,我能做些什么吗?

我想,由于组行视图有时在TableView中是部分透明的,所以他们做了一些修改,将其绘制到屏幕外缓冲区,然后将该缓冲区合成到屏幕上,因此,添加到背景中的效果并不重要,因为屏幕外缓冲区总是充满了透明度。

我不明白为什么在这种情况下需要使用屏幕外缓冲区,但屏幕外缓冲区解释了我在测试时看到的一些行为。你知道这一点吗(或者想出一个聪明的解决办法)?我也面临着类似的情况,苹果公司的超级绝密浮动组行的实现总是让我抓狂。我刚刚在滚动视图上添加了一个最小高度布局约束,当我调整窗口大小时,组视图随之拉伸/收缩。我想这可以解释组行视图的工作原理。They必须将其设置为层的内容。我会看看更改视图的层重画策略是否有任何作用,但我不会屏息以待。我没有。我结束了浮动行的模糊设置。不过,我还没有机会测试新的NSVisualEffectsView。