您好,欢迎来到二三娱乐。
搜索
您的当前位置:首页macOS NSStatusBar + NSPopover

macOS NSStatusBar + NSPopover

来源:二三娱乐

: macOS系统的顶部导航栏item

@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:);
}

: pop视图

@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效果图

Copyright © 2019- yule263.com 版权所有 湘ICP备2023023988号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务