18

我制作了一个自定义 NSView 并实现了该keyDown:方法。但是,当我按键时,该方法永远不会被调用。我必须注册才能接收这些活动吗?仅供参考,我正在制作一个基于文档的应用程序,并且可以在任何地方处理此代码(不必在此视图中)。在基于文档的应用程序中执行此操作以使事件在整个应用程序中发生的最佳位置是什么?

4

2 回答 2

30

您需要覆盖-acceptsFirstResponder才能返回YES

于 2012-04-05T01:28:50.940 回答
9

在斯威夫特:

class MDView: NSView {
    override var acceptsFirstResponder: Bool { return true }
}
于 2015-07-19T23:00:50.990 回答