我是一个相当新的程序员和时遇到一些麻烦UITextfields,基本上我有两个文本字段,我想在其中的一个字符的数量限制到一定量,同时允许其他领域有很多。
我发现,这个推荐一个帖子:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSUInteger newLength = [[textField text] length] + [string length] - range.length;
return (newLength > 2) ? NO : YES;
}
然而,这似乎影响到这两个文本字段。 我不知道该如何定位一个字段。
谁能帮助,也有一两件事,我得到什么在代码怎么回事,直到 - 范围。 长度,在该范围的字符的合计量?
好了,所以这里的问题是,它包含此代码的对象是代表这两个文本框。 有两种方法来解决这个问题。 无论是不加你不约的长度作为代表或更好的方法将是在领域区分保健文本字段shouldChangeCharactersInRange
方法。
为了您question-范围的第二部分是字符(多个)是/在文本字段中被改变,并且包括:字符串的改变的位置时,字符串的长度被改变。
我个人的偏好是说,如果文本长度超过最大长度和你不删除,然后拒绝的变化更大。
-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
if(textField == self.textfieldYouWantToLimitTheLengthOf){
if(textField.text.length > 2 && ![string isEqualToString:@""]){
return NO;
}
}
return YES;
}