1

我试图将文本字段中的字符数限制为 5 。所以当我们尝试输入第 6 个字符时,它不会做任何事情吗?这可能吗。我看到下面的代码,但它不起作用。我在谷歌搜索过这个得到了一些结果,比如

    - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
    NSUInteger newLength = [textField.text length] + [string length] - range.length;
    return (newLength > 5) ? NO : YES;
}

它不工作我仍然能够添加超过 5 个字符

4

2 回答 2

2

请检查您与 UITextfield 的委托连接

于 2013-07-15T09:14:47.883 回答
1

是否调用了代表?如果是,那么试试这个:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
    if ([textField.text length] > 5) {
        textField.text = [textField.text substringToIndex:5-1];
        return NO;
    }
    return YES;
}
于 2013-07-15T09:13:42.497 回答