如何在 Layer Host NSView 中使用 NSVisualEffectView

How to use NSVisualEffectView in a Layer Host NSView

我的 OSX 应用程序中有一个 NSView,使用 CALayer 执行各种动画。此视图是层宿主视图,其中包含许多小层。

我想添加一个 NSVisualEffectView 和 NSVisualEffectBlendingModeBehindWindow blendingMode 来支持 Yosemite 上的模糊透明效果。

问题是当我关闭图层宿主视图时,NSVisualEffectView 工作,但是当我打开图层宿主视图时,模糊透明效果消失,留下空白的白色不透明背景。

我的问题是:“是否可以将 NSVisualEffectView 与图层主机视图一起使用?如果可行,这里的方法是什么?”

原来是我做了一个NSVisualEffectView到layer host view才会出现这个问题

解决方案是添加 2 个视图: 下面的是一个 NSVisualEffectView。 上面那个是NSView层宿主视图。

这将解决问题。