是否可以从Storyboard中为桌面应用添加NSStatusBar
项?我在网上看到的大多数例子都在AppDelegate中做了所有事情,但我不认为这对于更复杂的应用程序来说是个好主意。
答案 0 :(得分:5)
不,您无法在故事板中有效添加NSStatusItem
。它没有出口,故事板编辑器也不知道它的任何属性。
如果要从状态栏项目中挂起菜单,可以(从Xcode 7开始)在故事板中创建菜单。将NSMenu
拖到应用程序场景中:
将菜单连接到应用代表中的插座:
最后,使用从故事板加载的菜单在代码中创建状态项:
func applicationDidFinishLaunching(aNotification: NSNotification) {
initStatusItem()
}
private var statusItem: NSStatusItem?
private func initStatusItem() {
self.statusItem = NSStatusBar.systemStatusBar().statusItemWithLength(NSVariableStatusItemLength)
statusItem?.title = "Test Item"
statusItem?.menu = self.statusItemMenu
}