2010-09-23 26 views
4

對於後臺應用程序(LSUIElement = 1),如果用戶雙擊應用程序圖標時彈出「偏好設置」或「配置」窗口,最優雅的方式是什麼它已經在運行?再次點擊應用程序圖標顯示可可應用程序的偏好

這是假設用戶無法從其他任何地方訪問應用程序的首選項(例如菜單欄狀態項目菜單)。

我會假設理想的方法會阻止prefs窗口在初始啓動時顯示,但足夠聰明,可以在後續雙擊應用程序圖標時顯示它。

感謝

回答

6

你只需要實現一個NSApplicationDelegate協議方法applicationShouldHandleReopen:hasVisibleWindows:

- (BOOL)applicationShouldHandleReopen:(NSApplication *)theApplication hasVisibleWindows:(BOOL)flag 
{ 
    // open pref pane 
    return NO; 
} 

就足夠了;此代理方法僅在應用程序重新打開時調用。

+0

現在很明顯!我去了NSApplicationDelegate協議,完全錯過了這個。這是編碼過去凌晨2點:) – the979kid 2010-09-24 09:15:14

相關問題