检测应用程序重新打开?

时间:2013-02-25 12:39:27

标签: objective-c cocoa

是否可以检测用户双击我的应用程序(在取景器中)是否已打开?我需要检测到这一点,因为我的应用程序是隐藏运行的,只有当用户“重新打开”它才会显示用户界面。

发生这种情况时是否会向应用发布某种事件/通知?

编辑:我知道Mac OS X只允许一个实例。如果用户尝试再次启动应用程序,我需要在当前实例上调用方法。

编辑:好像 - (BOOL)applicationShouldHandleReopen:(NSApplication *)theApplication hasVisibleWindows:(BOOL)flag  应该做的。

3 个答案:

答案 0 :(得分:1)

您可以使用NSApplication代表- (BOOL)applicationShouldHandleReopen:(NSApplication *)theApplication hasVisibleWindows:(BOOL)flag

  

在默认行为之前由应用程序发送给委托   重新打开(rapp)AppleEvents。

答案 1 :(得分:0)

在您的应用程序委托中实现applicationWillUnhide:(来自NSApplicationDelegate协议)。如果用户试图取消隐藏应用程序,则应调用它。

答案 2 :(得分:-1)

在您的App代理中实施-applicationDidBecomeActive: