Поскольку ваше приложение - UIElement
, оно NSMenu
не будет фокусироваться. Вы должны установить NSTimer
на 0,01 секунды, чтобы отобразить NSMenu
, и вы должны сделать приложение активным:
- (void)statusItemClicked {
[NSTimer scheduledTimerWithTimeInterval:0.01 target:self selector:@selector(showMenu) userInfo:nil repeats:NO];
[NSApp activateIgnoringOtherApps:YES];
}
- (void)showMenu {
[statusItem popUpStatusItemMenu:statusMenu];
}