要求
我想检测不是一个字符而是一系列字符来触发一个动作,例如当用户将“ cat ”键入NSView
子类时 - 而不是' C ”。
除了在我的NSMutableArray
方法中输入最后3个字符keyDown:
之类的东西,从该数组汇编字符串(通过NSData
?)并检查字符串?
听起来有点尴尬..但我无法想出更简单的方法(或NSResponder
/ NSView
内置功能)
答案 0 :(得分:1)
我只保留最后'n'个字符的NSString。在keyDown:中追加到最后,当你想要时(从它开始大于'n'时)从头开始剪切,检查字符串以查看每次获得新密钥时它是否包含'cat'。
如果您检查的字符数少于THOUSAND字符,则字符串是完全有效的方法。