在Cocoa中动态添加和删除菜单非常简单,NSApp通过mainMenu管理主菜单,提供了删除和插入菜单项的功能。
直接上代码:
- (IBAction)deleteFile:(id)sender { // [[NSApp mainMenu] removeItem:_fileMenuItem]; [[NSApp mainMenu] removeItemAtIndex:1]; } - (IBAction)showFile:(id)sender { // [[NSApp mainMenu] addItem:_fileMenuItem]; [[NSApp mainMenu] insertItem:_fileMenuItem atIndex:1]; }
其中_fileMenuItem是通过IBOutlet指向File菜单项的。