Ho un oggetto controller che possiede un NSMenu ed è il delegato di quel menu, nell'interesse della popolazione pigra.NSMenu delegato non chiamato per popolare
Tuttavia, non viene mai chiamato né numberOfItemsInMenu:
né menuNeedsUpdate:
, quindi il menu rimane vuoto.
mi hanno confermato che:
- L'oggetto controllo non è stato deallocato. (Il controller, a sua volta, possiede il menu.)
- Ha un menu.
- Il menu ha un delegato e questo è il controller.
Se implemento menuWillOpen:
, che si chiamati, ma you're not supposed to populate the menu there.
Ho provato a inviare il menu un messaggio update
e questo non ha avuto alcun effetto. Il delegato è rimasto non chiamato e il menu è rimasto vuoto.
Nel caso sia rilevante: questo menu non è nel menu principale; è usato altrove.
Perché il menu non chiede al proprio delegato di compilarlo? C'è qualcosa che ho perso, o è solo rotto?
Puoi incollare qui il tuo codice. Quindi lo proveremo anche noi? –
@hussainShabbir: No. Il codice non mi appartiene; Stavo lavorando a un lavoro a contratto. (Oltre a ciò, l'ho già modificato per non fare affidamento su quei metodi chiamati dal sistema.) –
Sto avendo esattamente lo stesso problema adesso, e la tua menzione riguardo 'menuWillOpen:' mi ha salvato molto tempo. Per la cronaca, 'menuDidClose:' rende anche lo stesso problema anche per l'impostazione della proprietà 'enabled' di una voce di menu. L'unica cosa che funziona è 'menuNeedsUpdate:'. – Eonil