我有NSViewController
我通过调用
self.nextResponder = self.view.nextResponder;
self.view.nextResponder = self;
当用户按下视图内的键时,我能够成功接收keyDown:
条消息。但是,出于某种原因,当用户访问MainMenu栏时,我没有收到tryToPerform:with:
和validateMenuItem:
条消息。我在这里缺少什么?
答案 0 :(得分:0)
事实证明,在调用respondsToSelector:
之前,实际上正在发送validateMenuItem:
消息。如果NSViewController
实际上没有响应消息,则validateMenuItem
永远不会被调用。也就是说,在整个过程中,我从来没有看到tryToPerform:with:
被调用。不知道为什么,要查看Cocoa的事件编程指南并报告回来。