macOS的menuBar功能非常强大,我们在开发macOS应用的时候,经常需要利用menuBar实现功能。这篇文章主要是关于如何用swiftUI优雅地现在menuBar的popover。
最终效果图:
创建Popover
在AppDelegate文件中,声明一个NSPopover变量(下面的statusBarItem之后会用到)
var popover: NSPopover! var statusBarItem: NSStatusItem!
随后,在applicationDidFinishLaunching中, ContentView 初始化之后,加上
// Create the popover
let popover = NSPopover()
popover.contentSize = NSSize(width: 400, height: 400)
popover.behavior = .transient //代表用户点击其他区域时popover自动消失 popover.contentViewController = NSHostingController(rootView: contentView) self.popover = popover
此时我