进入另一个视图时,将NSVisualEffectView的角弄圆

时间:2019-09-04 06:36:03

标签: swift xcode macos cocoa appkit

我正在开发一个MacOS应用程序,该应用程序使用嵌入在应用程序中的NSVisualEffectView(此处称为“圆角视图”),如下所示:

Storyboard Hierarchy

The App

旨在为“图像视图”提供背景。这种方法有效,但是尽管尝试了所有可能找到的方法,但我无法使此视图的角变圆。

我尝试过的东西

(请注意,我也尝试将这些东西的每种组合都尝试过。)

设置蒙版图像

我创建了一个带有黑色圆角正方形的透明,高分辨率PNG,并将其添加为资产,并在VisualEffectView的Mask Image属性中进行了设置:

Mask Image set in View

这绝对对任何事物都没有影响。

设置wantLayer和cornerRadius

@IBOutlet weak var roundedView: NSVisualEffectView!

...

override func viewWillAppear() {
    view.window?.isOpaque = false
    roundedView.wantsLayer = true
    roundedView.layer!.cornerRadius = 20.0
}

这也不起作用。

各种合成过滤器

我认为设置特殊的混合模式可能会有所帮助。它们都没有强迫我打算的调整变得不透明。

0 个答案:

没有答案