我是一名SpriteKit编程的初学者,一直在尝试弄清如何处理来自键盘的输入。
目前我发现,你应该创建一个NSResponder子类并像这样实现它:
显然,接口和实现中还有一些方法/属性在
接下来,我会开始使用关键代码来检测按下了哪些键,但是
需要帮助吗?
更新: 谢谢你们的答案!我发现你必须直接在场景类中实现
目前我发现,你应该创建一个NSResponder子类并像这样实现它:
@interface AppDelegate : NSResponder <NSApplicationDelegate>
-(void)keyUp:(NSEvent *)theEvent;
-(void)keyDown:(NSEvent *)theEvent;
@end
@implementation AppDelegate
-(void)keyUp:(NSEvent *)theEvent
{
NSLog(@"Key Released");
}
-(void)keyDown:(NSEvent *)theEvent
{
NSLog(@"Key Pressed");
}
@end
显然,接口和实现中还有一些方法/属性在
AppDelegate
中,但我没有将它们放在那里以保持问题的相关性。接下来,我会开始使用关键代码来检测按下了哪些键,但是
keyUp
和keyDown
方法甚至没有被调用。我不知道为什么。需要帮助吗?
更新: 谢谢你们的答案!我发现你必须直接在场景类中实现
keyUp
和keyDown
,因为它们不会从AppDelegate
中调用。再次感谢您的帮助!