我对此很新,我很抱歉提出这个问题。
我正在努力让这个代码适用于我的代码,但却没有得到它。无论我似乎做什么,我按下的键在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是我输入的文本字段。
有人可以告诉我如何获得这项工作,这样我可以在发生时跟踪每次击键而不是之后的按键吗?
答案 0 :(得分:1)
要查看刚刚按下的键,请使用:
NSLog(@"%@", string);
从技术上讲,这可能是多个字符,例如剪切,粘贴或撤消操作。
在方法完成之前,文本字段的值实际上不会更改。如果要查看文本字段的值,请使用
NSLog(@"%@", [MyTextField.text stringByReplacingCharactersInRange:range withString:string);