NSView 设置圆角样式和透明背景

要解决的问题:
把程序主窗口的边角设为圆角

代码:

    //set window radius
    self.view.wantsLayer = true;
    self.view.layer?.masksToBounds = true;
    self.view.layer?.cornerRadius = 40.0; //为了视觉效果明显设了很大的圆角
    self.view.window?.backgroundColor = NSColor.clear;
    self.view.window?.isOpaque = false;

代码文件:
MainLayoutViewController.swift

代码写好后发现圆角效果呈现出来了,可是之前方边角的背景还在。


NSView 设置圆角样式和透明背景_第1张图片
圆角背景不透明.png

经过折腾发现问题出在,将背景色设为透明的这两行代码放在了 viewDidLoad 部分, 把这两行代码放到viewDidAppear部分就可以了

viewDidAppear调的更早,要在此时设置view.window样式。

你可能感兴趣的:(NSView 设置圆角样式和透明背景)