2014-05-06 19 views
6

Ho un'app basata su NSDocument con salvataggio automatico abilitato.Come disabilitare la finestra del titolo della finestra di NSDocument

vorrei evitare che questo popup da mostrare: autosave popup

ho cercato di ritorno pari a zero dal -title di NSWindow, -representedFilename e -representedURL che nascondere il titolo nascondere efficacemente il titolo, ma non hanno alcun effetto sul ribasso di fronte all'indicatore di divulgazione e al popup.

C'è un modo per impedire la presentazione di questo popup?

risposta

8

sono stato in grado di evitare che il pulsante venga dimostrato sovrascrivendo di NSWindow

+ (NSButton *)standardWindowButton:(NSWindowButton)windowButtonKind forStyleMask:(NSUInteger)windowStyle

e il ritorno a zero per NSWindowDocumentVersionsButton

+0

È necessario ignorare che nel NSWindow sottoclasse, non in NSWindowController sottoclasse! Non commettere lo stesso errore di me (: – coolcool1994

+0

Disabilita anche x, minimizza, allarga i pulsanti a destra? La mia app è stata respinta a causa di questo. – coolcool1994

+0

Dovresti restituire nil solo per NSWindowDocumentVersionsButton. Se restituisci nil per ogni pulsante, nessun pulsante – pfandrade

4

ritorno falso dal autosavesInPlace di NSDocument() ignorare

+0

Questa è la risposta corretta e l'opzione più semplice – Inn0vative1

+0

La prima riga della domanda indica che il salvataggio automatico è abilitato. Disabilitare una funzione per evitare di mostrare il pulsante non è una risposta corretta. – pfandrade

0

È inoltre possibile utilizzare una barra degli strumenti semplificata (wwdc2016)

override func viewWillAppear() { 
     super.viewWillAppear() 

     self.view.window!.titleVisibility = .hidden 
    } 

Questo rimuove anche la barra del titolo (ma non quelle di finestre a schede)