2012-08-24 26 views
6

OS X uygulamamı Xcode'tan başlattığımda, olması gerektiği gibi görünür.Pencere kapatıldıktan sonra geri yüklenmez

Pencereyi kapattığımda, (beklediğiniz gibi) kaybolur ve uygulama yine de dock'ta etkin olarak görünür.

Harika, olması gerektiği gibi. Ama pencereyi etkinleştirmek için dokıya tıkladığımda, o görünmüyor.

Herhangi bir fikrin var mı?

+0

bunu nasıl kapanıyor şöyle

o edinmek için, applicationShouldHandleReopen:hasVisibleWindows: uygulayabilir? Uygulamayı bırakıp saklamak veya küçültmek mi? – ekims

cevap

21

Soruyla ilgili fazla bilgi yok, ancak uygulamanın tek pencereli bir uygulama olduğunu varsayalım (yani, NSDocument tabanlı).

Bu senaryodaki tipik bir durum, kullanıcının pencereyi kapatması ve uygulamada olması gerektiği gibi Dock'taki simge ile çalışmaya devam etmesidir. Bu durumda, kullanıcı normal olarak, Dock'taki simgeyi tıklatarak uygulama etkinleştirildiğinde pencerenin yeniden görünmesini isterdi. hızlı için

- (BOOL)applicationShouldHandleReopen:(NSApplication *)theApplication hasVisibleWindows:(BOOL)visibleWindows 
{ 
    if (visibleWindows) { 
     [self.window orderFront:self]; 
    } 
    else { 
     [self.window makeKeyAndOrderFront:self]; 
    } 

    return YES; 
} 
+0

sorudaki bilgi eksikliği için özür dilerim .. bu bir denemeye izin verir ve size bildiririz .. alkışlar – theiOSDude

+1

sadece @Monolo teşekkürler - 'Kapandığında bırakın' seçeneği IB'de gösterilmediğini hatırlamak başka bir kilitlenme çağrısı yapar 'makeKeyAndOrderFront' – theiOSDude

3

:

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 
} 
İlgili konular