我的应用程序位于状态栏中。当应用程序首次启动时,我的搜索字段响应正常,并允许我单击并输入文本,看起来像this。
但是在将应用程序单击到另一个应用程序之后,例如" xcode"然后回到我的菜单中,搜索字段和自定义视图的其余部分显示为暗淡,除非我多次单击,否则不响应。
在我的applicationDidFinishLaunching
我使用自定义视图设置了statusItem
和NSMenuItem
。
//set up hotkeys
[self registerHotKeys];
_statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength];
NSImage *menuIcon = [NSImage imageNamed:@"Menu Icon"];
NSImage *highlightIcon = [NSImage imageNamed:@"Menu Icon"];
[highlightIcon setTemplate:YES];
[[self statusItem] setImage:menuIcon];
[[self statusItem] setAlternateImage:highlightIcon];
[[self statusItem] setMenu:[self menu]];
[[self statusItem] setHighlightMode:YES];
// search menu item
NSMenuItem *searchMenuItem = [[NSMenuItem alloc] initWithTitle:@"search" action:nil keyEquivalent:@""];
self.searchMenuItemView = [[SearchMenuItemView alloc] initWithNibName:@"SearchMenuItemView" bundle:nil];
self.searchMenuItemView.delegate = self;
[searchMenuItem setView:self.searchMenuItemView.view];
[searchMenuItem setTarget:self];
[searchMenuItem setEnabled:YES];
[_menu insertItem:searchMenuItem atIndex:0];
视图来自UIViewController
,但我尝试仅使用NSView
来设置视图但没有运气使用"this"来自有类似问题的人,但这并没有解决矿。自动启用已开启。
有没有办法让NSMenuItem
恢复到应用程序首次推出时的状态?