Iphone 如何在文本字段中设置限制?

Iphone 如何在文本字段中设置限制?,iphone,objective-c,uitextfield,Iphone,Objective C,Uitextfield,有谁能告诉我如何在objective-c中设置文本字段中输入单词的限制? 在我的情况下,我有一个注册表,在注册表中,每个用户都必须输入用户名,密码,电子邮件和电话号码,现在我必须限制用户输入最多15个字符的名称 有人能告诉我怎么做吗?您可以通过以下两种方式限制UITextField中的输入数量 首先,将相关的UIViewController作为委托对象设置为UITextField yourTextField.delegate = self; 然后将以下代码段添加到您的UIViewControl

有谁能告诉我如何在objective-c中设置文本字段中输入单词的限制? 在我的情况下,我有一个注册表,在注册表中,每个用户都必须输入
用户名
密码
电子邮件
电话号码
,现在我必须限制用户输入最多15个字符的名称


有人能告诉我怎么做吗?

您可以通过以下两种方式限制
UITextField
中的输入数量

首先,将相关的
UIViewController
作为委托对象设置为
UITextField

yourTextField.delegate = self;
然后将以下代码段添加到您的
UIViewController

-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
    if ([textField.text length]<15) {
           return YES;
    }

    return NO;
}
然后在类中执行以下
shouldChangeCharactersRange
任务

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

您可以通过以下两种方式限制
UITextField
中的输入数量

首先,将相关的
UIViewController
作为委托对象设置为
UITextField

yourTextField.delegate = self;
然后将以下代码段添加到您的
UIViewController

-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
    if ([textField.text length]<15) {
           return YES;
    }

    return NO;
}
然后在类中执行以下
shouldChangeCharactersRange
任务

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

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

NSString *textFieldText = [textField.text stringByReplacingCharactersInRange:range withString:string];

        if ([textFieldText length] > 15) 
        {
            return NO;
        }

 return YES;
}
试试这个:

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

NSString *textFieldText = [textField.text stringByReplacingCharactersInRange:range withString:string];

        if ([textFieldText length] > 15) 
        {
            return NO;
        }

 return YES;
}

这篇文章的可能副本可能有你正在寻找的:这篇文章的可能副本可能有你正在寻找的:这是错误的,因为它会考虑文本字段的文本在用户键入结果之前改变的长度,而不是它将是什么。检查已被标记为重复的问题以获得更详细的信息。这是错误的,因为它会考虑文本字段的文本在用户键入结果之前改变的长度,而不是它将是什么。检查标记为重复的问题以了解更多详细信息。