我在设置文本字段内容的最大长度时遇到问题。我采取的过程是在头文件中实现UITextFieldDelegate。然后我定义(然后调用)这个方法:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
NSUInteger newLength = [textField.text length] + [string length] - range.length;
return (newLength > 5) ? NO : YES;
}
这是我在网站上建议的方法。我也试过这个:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
NSUInteger newLength = [zipCode.text length] + [string length] - range.length;
return (newLength > 5) ? NO : YES;
}
“zipCode”是我连接到文本字段的插座。每次我更改代码,我都确保重新连接插座。我觉得这是一件非常简单的事情,我很想念。抱歉,如果这有点令人费解,我还有很多东西需要学习!感谢。
答案 0 :(得分:0)
试试这个:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
return (zipCode.text.length + string.length <= 5);
}
然后,在viewDidLoad
方法中:
- (void)viewDidLoad {
zipCode.delegate = self;
//.....
[super viewDidLoad];
}