如何检测UITextField上的UIKeyboard“退格”按钮?

时间:2011-07-25 15:19:37

标签: iphone objective-c uitextfield uikeyboard

如何检测UIKeyboard上按下的退格按钮?

enter image description here

感谢


编辑:是否有任何键盘委托返回按键值?

3 个答案:

答案 0 :(得分:59)

如果UITextField为空,则不调用shouldChangeTextInRange委托方法 您可以继承UITextField并覆盖此方法:

-(void)deleteBackward;
{
    [super deleteBackward];
    NSLog(@"BackSpace Detected");
}

由于UITextField符合UITextInput协议,因此实现了此方法,您可以覆盖它以检测何时按下退格。 然后,如果检测到退格,您可以编写自己的协议/委托方法来提醒自定义文本字段委托。

答案 1 :(得分:29)

首先,引用UIViewController的{​​{1}}需要符合UITextField UITextFieldDelegate。然后将您的班级设为protocoldelegate(例如UITextField)。然后在您的课程中添加以下内容。当一串“”作为[myTextField setDelegate:self]发送时,您知道它是退格。

replacementString

答案 2 :(得分:4)

临时我在textFieldDidBeginEditing

上插入零空格字符
textField.text = @"\u200B";

在退格键上,它删除了这些字符,但图形上它是相同的!

这是一个黑客,它有效,但它隐藏占位符文本...不好......