@interface AppDelegate (){
NSStatusItem * statusItem;
}
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
// Insert code here to initialize your application
/* 初始化 */
statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength];
/* 设置NSImage * /
[statusItem.button setImage:[NSImage imageNamed:@"statusItem"]];
/* 设置点击响应事件 */
statusItem.action = @selector(touchStatusItem:);
}
@interface AppDelegate (){
NSPopover * popover;
}
-(void)touchStatusItem:(NSStatusBarButton *)button{
/* 初始化 */
popover = [[NSPopover alloc]init];
/* 设置动画 */
popover.behavior = NSPopoverBehaviorTransient;
/* 设置外观 */
popover.appearance = [NSAppearance appearanceNamed:NSAppearanceNameVibrantLight];
/* 设置展示视图 */
popover.contentViewController = [[PopViewController alloc]initWithNibName:@"PopViewController" bundle:nil];
/* 设置展示方位 */
[popover showRelativeToRect:button.bounds ofView:button preferredEdge:NSRectEdgeMaxY];
}
效果图
NSStatusBar + NSPopover效果图