【发布时间】:2016-03-02 19:39:52
【问题描述】:
我设置了一个项目,其中两个视图控制器连接到两个 xib(MainMenu.xib 和 MasterVC.xib)
在我的 MasterVC 中,我以编程方式将带有操作的 NSMenuItems(位于 MasterVC 中)添加到位于 MainMenu.xib(并连接到 AppDelegate)的菜单中。
let menuItem = NSMenuItem()
menuItem.title = object.name!
menuItem.keyEquivalent = object.shortcut!
menuItem.representedObject = object
menuItem.action = "testSelector:"
appDel.menu.insertItem(menuItem, atIndex: 0)
func testSelector(sender: NSMenuItem) {
let object = (sender.representedObject as! MyNewObject)
print("Name of set:", object.name)
}
只要我打开了 MasterVC 的窗口,我添加的菜单项就可以工作(已启用)。一旦我关闭它,我就无法点击那些菜单项(它们被禁用)。
有没有办法让它们一直处于启用状态?
【问题讨论】:
-
关闭MasterVC后,哪个对象应该执行菜单命令?
标签: objective-c swift macos cocoa