Ciao Ho implementato un NSPopover in una delle mie app, ma il popover non si chiuderà. Immagino che dovrebbe chiudersi una volta che clicco su qualcos'altro, ma non è così. So che esiste un'azione popover ravvicinata, ma funziona solo con un pulsante diverso. Come posso farlo vedere che il popover è aperto e quando è aperto per chiudere il popover quando premo lo stesso pulsante?Come eseguire un'azione per chiudere NSPopover?
risposta
Ho risolto il problema!
- Per prima cosa, fai clic sul tuo file .xib.
- Dove viene visualizzato il primo proprietario di risponditori e proprietario di file: fare clic sul popover.
- Nella barra laterale passare al centro attributi
- Modificare il comportamento da Definito da applicazione a Transiente e dovrebbe funzionare!
Questo dovrebbe far sparire il popover quando qualcuno ha fatto clic fuori dal popover.
Un altro modo per chiudere il popover è avere un pulsante separato. Basta aggiungere un altro NSButton
e quindi collegarlo al popover sulla barra laterale e impostarlo su Azioni ricevute -> eseguire close:
Inoltre, se si seleziona Semi-transitorio, il primo clic al di fuori del popover chiuderà il popover e si registrerà con la vista sottostante (ad esempio se si fa clic direttamente su un pulsante in un'altra vista, il popover si chiuderà e il pulsante sarebbe stato premuto.) –
Capito come farlo. Innanzitutto fai clic sul popover in Interface Builder in xCode 4, quindi vai alla sezione degli attributi nella barra laterale e modifica il comportamento del popover su Transient invece del predefinito Application-Defined. Questo dovrebbe farlo sparire! – sridvijay
Conoscimenti sulla risoluzione del problema, ma è molto meglio fornire risposte, anche se si sta rispondendo alla propria domanda, fornendo un post di risposta reale. Fai clic sul pulsante "Rispondi alla tua domanda" qui sotto. Inoltre, questa domanda è molto mal etichettata. Prendi in considerazione l'aggiunta di un tag o due che si riferiscono alla piattaforma o alla lingua che stai chiedendo. Ciò aiuterà gli altri che hanno la tua stessa domanda a trovare la risposta che hai risolto! – SingleNegationElimination
Grazie, ho appena aggiunto un'altra risposta e aggiunto altri tag! – sridvijay