3

有人知道如何从 ios 的数字键盘中检测到删除按键吗?

4

2 回答 2

4

如果您使用的是 UITextField,textField:shouldChangeCharactersInRange:replacementString:则将使用长度为 1 的范围和一个空的替换字符串来调用您的委托。但是,如果没有删除任何内容,您将不会收到任何通知。

如果您使用的是 UITextView,您的委托textView:shouldChangeTextInRange:replacementText:将被调用,其长度范围为 1 和一个空的替换字符串。但是,如果没有删除任何内容,您将不会收到任何通知。

如果您使用自己的实现 UIKeyInput 的类,deleteBackward则应该调用它。我不知道实现 UITextInput 的类(它本身包括 UIKeyInput)是否可能曾经拥有replaceRange:withText:setMarkedText:selectedRange:调用过长度范围为 1 和空替换字符串的类,或者如果没有要删除的内容,在这些情况下可能会发生什么。

于 2011-05-02T03:43:09.253 回答
0

如果你正在实现类似密码的东西,我认为隐藏的文本字段会更好,并且有更多的控件。

于 2015-10-19T19:17:09.623 回答