检查UITextField是否发生了击键,让我发疯:-)

时间:2010-10-04 22:24:05

标签: objective-c ios4 uitextfield

我对此很新,我很抱歉提出这个问题。

我正在努力让这个代码适用于我的代码,但却没有得到它。无论我似乎做什么,我按下的键在NSLog中显示一个键击之后。我知道'shouldChangeCharactersInRange'以这种方式工作,我已经冲浪并试图测试我找到的一些解决方案。一个是:Using `textField:shouldChangeCharactersInRange:`, how do I get the text including the current typed character?但我仍然没有得到它。

我目前的测试代码,我试图让它工作并更改回来:

-(BOOL) textField: (UITextField *)theTextField shouldChangeCharactersInRange: (NSRange)range replacementString: (NSString *)string {
    NSLog(@"%@", MyTextField.text);

    MyTextField.text = MyTextField.text;

   return YES;
}

MyTextField是我输入的文本字段。

有人可以告诉我如何获得这项工作,这样我可以在发生时跟踪每次击键而不是之后的按键吗?

1 个答案:

答案 0 :(得分:1)

要查看刚刚按下的键,请使用:

NSLog(@"%@", string);

从技术上讲,这可能是多个字符,例如剪切,粘贴或撤消操作。

在方法完成之前,文本字段的值实际上不会更改。如果要查看文本字段的值,请使用

NSLog(@"%@", [MyTextField.text stringByReplacingCharactersInRange:range withString:string);