В настоящее время я пытаюсь уменьшить вибрацию по умолчанию, которая добавляется к значкам NSStatusBarItems в ОС Ma c. Я понимаю, что это может быть достигнуто путем изменения атрибута allowVibrancy. Тем не менее, поскольку это доступно только для чтения в NSView, мне нужно расширить этот класс и переопределить метод allowVibrancy.
class NoneVibrancyView: NSView
{
override var allowsVibrancy: Bool { return false }
}
В настоящее время мой значок все еще выглядит как активированный allowVibrancy. Мне интересно, правильно ли я заменяю свой NSView. Вот мой код:
let statusBar = NSStatusBar.system
statusBarItem = statusBar.statusItem(withLength: NSStatusItem.squareLength)
let noneVibrancyView = NoneVibrancyView(frame: statusBarItem.button!.frame)
statusBarItem.button?.addSubview(noneVibrancyView)
statusBarItem.button?.title = "?"
let statusBarMenu = NSMenu(title: "My Status Menu Bar")
statusBarItem.menu = statusBarMenu