检测iOS上从外部键盘按下的“返回”键

时间:2013-04-30 18:58:38

标签: ios uitextfield

有没有办法检测何时从连接到iOS设备的外接键盘按下“Return”键,而不是点击屏幕键盘的“Return”键?

公共API是否可以实现这一目标?

我的课程正在UITextFieldDelegate,我接到来电:

- (BOOL)textFieldShouldReturn:(UITextField *)textField

但是当它被调用时,textField.text会返回文本字段中的字符,但不会返回已发出的回车符。

对于物理或虚拟键盘,按“返回”键不会调用

-textField:shouldChangeCharactersInRange:replacementString

1 个答案:

答案 0 :(得分:0)

在iOS 7+中,您可以使用UIKeyCommand来区分通过硬件键盘返回。

myViewController.addKeyCommand(
  .init(input: "\r",
        modifierFlags: [],
        action: #selector(hardwareKeyboardDidPressReturnKey))
)