视频可参考:
http://www.swiftvideotutorials.com/creating-menubar-apps-osx
开发步骤大体如下:
1、新建工程,因为这个菜单程序不需要窗口,所以在MainMenu.xib中删除窗口
2、在object library中拖入一个menu.
3、删除2个menu item,把一个文字改成 Show hidden files
4、添加action和outlet
5、创建icon
6、写代码:
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 27 28 29 30 31 32 33 34 35 | import Cocoa @NSApplicationMain class AppDelegate: NSObject, NSApplicationDelegate { @IBOutlet weak var window: NSWindow! @IBOutlet weak var statusMenu: NSMenu! let statusItem = NSStatusBar.systemStatusBar().statusItemWithLength(-1) func applicationDidFinishLaunching(aNotification: NSNotification) { // Insert code here to initialize your application let icon = NSImage(named: "statusIcon") statusItem.image = icon statusItem.menu = statusMenu } @IBAction func menuClicked(sender: NSMenuItem) { //let calendar = NSCalendar.currentCalendar() let alert = NSAlert() alert.messageText = "message" alert.informativeText = "informativeText" alert.addButtonWithTitle("ok") alert.addButtonWithTitle("cancel") let returnCode = alert.runModal() if returnCode == NSAlertFirstButtonReturn{ NSLog("1") }else{ NSLog("2") } } } |
7、这时运行项目,docker里还是会出现图标,需要增加一个配置:
将Application is agent (UIElement)一项设置为Yes