NSApplication *thisApp = [NSApplication sharedApplication];
[thisApp activateIgnoringOtherApps:YES];
[self.window orderFrontRegardless];
我使用上面的代码使我的应用程序在需要显示窗口时获得焦点,并且我想在隐藏窗口时使应用程序失去焦点。
[self.window orderOut:self];
[self.window resignMainWindow];
[self.window resignKeyWindow];
上面的代码无法解决问题。我该怎么办?
答案 0 :(得分:3)
如果您乐意隐藏应用程序的所有窗口,可以使用[[NSApplication sharedApplication] hide:nil]
。这将自动激活下一个应用程序。如果你想激活另一个应用程序,但仍然保持你的应用程序在屏幕上,这有点困难。对于Mac OS X 10.6+,您可以使用NSRunningApplication类在激活之前查找当前应用程序,然后在完成后重新激活它。