1

我正在使用 UITextFieldDelegate 但我正在使用的方法:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string

仅在编辑文本之前触发 get 。我需要他们输入字母后的文本长度。使用上面的方法,我总是落后 1 个字母。

4

2 回答 2

2

试试这个以获得新的长度:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
    NSUInteger length = [[textField text] length] - range.length + string.length;
    return YES;
}
于 2013-02-19T14:50:51.867 回答
0

您需要做的是将一个方法连接到您的 UITextField 以用于“编辑更改” - 事件。然后每次用户输入(或删除)一个字母时,该方法将被立即调用。希望能帮助到你!

于 2013-02-19T14:51:59.877 回答