如何将OSX应用程序带到前端?

Tro*_*roy 4 macos xcode objective-c

我正在开发一个小型的OSX应用程序(它是一个菜单栏应用程序).当我最初构建/启动应用程序时,它会转到前台,所有其他应用程序都会转到后台(就像它们应该的那样).当我点击另一个应用程序时,该应用程序出现并且我的应用程序返回(应该如此),但是当我点击我的应用程序时,它不会再次出现.另一个应用程序仍然是最前面的应用程序(无论其他应用程序是什么).

除了它很奇怪之外,这个问题的一大问题是当我的应用程序不是最前面的应用程序时,没有任何悬停操作或游标可以工作.

有没有办法以编程方式强制它到前面?如何点击它不会带来前进?...

Tro*_*roy 9

我在这个问题中找到了答案.可以使用以下任一方式完成:

[[NSApplication sharedApplication] activateIgnoringOtherApps : YES];
Run Code Online (Sandbox Code Playgroud)

或这个:

[[NSRunningApplication currentApplication] activateWithOptions:(NSApplicationActivateAllWindows | NSApplicationActivateIgnoringOtherApps)];
Run Code Online (Sandbox Code Playgroud)