【发布时间】:2014-01-28 00:55:59
【问题描述】:
是否可以连续按键?
我正在使用 keyCommands: 来拦截在外部键盘上按下的箭头键,但每次按下我只能接到 1 个电话。只要按住按键,我希望每 X 毫秒接到多个呼叫,或者在按键被按下和松开时呼叫。
这是我的代码:
- (NSArray *)keyCommands
{
UIKeyCommand *upArrow = [UIKeyCommand keyCommandWithInput:UIKeyInputUpArrow
modifierFlags:0
action:@selector(upArrow:)];
UIKeyCommand *downArrow = [UIKeyCommand keyCommandWithInput:UIKeyInputDownArrow
modifierFlags:0
action:@selector(downArrow:)];
UIKeyCommand *leftArrow = [UIKeyCommand keyCommandWithInput:UIKeyInputLeftArrow
modifierFlags:0
action:@selector(leftArrow:)];
UIKeyCommand *rightArrow = [UIKeyCommand keyCommandWithInput:UIKeyInputRightArrow
modifierFlags:0
action:@selector(rightArrow:)];
UIKeyCommand *leftArrowCmd = [UIKeyCommand keyCommandWithInput:UIKeyInputLeftArrow
modifierFlags:UIKeyModifierCommand
action:@selector(leftArrowCmd:)];
UIKeyCommand *rightArrowCmd = [UIKeyCommand keyCommandWithInput:UIKeyInputRightArrow
modifierFlags:UIKeyModifierCommand
action:@selector(rightArrowCmd:)];
UIKeyCommand *lCmd = [UIKeyCommand keyCommandWithInput:@"l"
modifierFlags:UIKeyModifierCommand
action:@selector(lCmd:)];
UIKeyCommand *rCmd = [UIKeyCommand keyCommandWithInput:@"r"
modifierFlags:UIKeyModifierCommand
action:@selector(rCmd:)];
UIKeyCommand *mCmd = [UIKeyCommand keyCommandWithInput:@"m"
modifierFlags:UIKeyModifierCommand
action:@selector(mCmd:)];
return @[upArrow, downArrow, leftArrow, rightArrow, leftArrowCmd, rightArrowCmd, lCmd, rCmd, mCmd];
}
【问题讨论】:
标签: ios keyboard keyboard-shortcuts uiresponder uikeycommand