swift os x开发之菜单栏程序自定义View

前面的文章 swift os x开发之菜单栏程序 点击菜单图标后弹出的是一个下拉菜单。如果我们想定义自定义的view怎么操作呢?

1、在之前文章的项目中,删掉Menu
2、拖进来一个Popover and View Controller
3、再拖进来一个Custom View
4、将Popover View Controller的view绑定指定给Custom View:
7BED3900 890D 4CE1 996D D3FD7061487B
5、代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import Cocoa

@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate {

    @IBOutlet weak var window: NSWindow!
   
    @IBOutlet weak var popup: NSPopover!
   
    @IBOutlet weak var statusButton: NSButton!
   
    let statusItem = NSStatusBar.systemStatusBar().statusItemWithLength(-1)

    func applicationDidFinishLaunching(aNotification: NSNotification) {
        popup.behavior = NSPopoverBehavior.Transient
       
        let icon = NSImage(named: "statusIcon")
        statusItem.image = icon
        statusItem.target = self
        statusItem.action = Selector("iconClicked")
    }
   
    func iconClicked() {
        popup.showRelativeToRect(self.statusItem.button!.bounds, ofView: self.statusItem.button!, preferredEdge: NSRectEdge.MinY)
    }
}

6、运行效果:
屏幕快照 2015 10 09 上午10 07 44

发表评论

电子邮件地址不会被公开。 必填项已用*标注