當我從Xcode啓動OS X應用程序時,它看起來應該如此。關閉後窗口不會恢復
當我關閉窗口時,它會消失(正如您所期望的),並且該應用程序仍然在碼頭上顯示爲活動狀態。
太好了,應該是這樣。但是當我點擊底座激活窗口時,它不會顯示出來。
任何想法?
當我從Xcode啓動OS X應用程序時,它看起來應該如此。關閉後窗口不會恢復
當我關閉窗口時,它會消失(正如您所期望的),並且該應用程序仍然在碼頭上顯示爲活動狀態。
太好了,應該是這樣。但是當我點擊底座激活窗口時,它不會顯示出來。
任何想法?
問題中沒有太多信息,但讓我推測該應用程序是單窗口應用程序(即不是基於NSDocument
的應用程序)。
在這種情況下,一個典型的情況是用戶關閉窗口,並且應用程序繼續按照它應該與Dock中的圖標一起運行。
在這種情況下,用戶通常喜歡通過單擊Dock中的圖標激活應用程序時重新顯示窗口。
要獲得,你可以實現applicationShouldHandleReopen:hasVisibleWindows:
如下:
- (BOOL)applicationShouldHandleReopen:(NSApplication *)theApplication hasVisibleWindows:(BOOL)visibleWindows
{
if (visibleWindows) {
[self.window orderFront:self];
}
else {
[self.window makeKeyAndOrderFront:self];
}
return YES;
}
對於缺乏信息的問題感到抱歉..會給這個嘗試,讓你知道..歡呼 – theiOSDude
只是門票謝謝@Monolo - 記住'釋放時關閉'選項在IB中否認會導致崩潰調用'makeKeyAndOrderFront' – theiOSDude
:
func applicationShouldHandleReopen(sender: NSApplication, hasVisibleWindows flag: Bool) -> Bool {
if let window = sender.windows.first {
if flag {
window.orderFront(nil)
} else {
window.makeKeyAndOrderFront(nil)
}
}
return true
}
你怎麼關閉呢?退出應用程序與隱藏或最小化? – ekims