任何机构可以告诉我如何设置单词的限制,以输入在Objective-C中的文本字段? 在我的情况下,我有一个注册表格和注册表格,每个用户必须输入username
,password
,email
和phone no.
,现在我必须限制用户输入最多15个字符的名称。如何在文本字段中设置限制?
任何人都可以告诉我我该怎么做?
任何机构可以告诉我如何设置单词的限制,以输入在Objective-C中的文本字段? 在我的情况下,我有一个注册表格和注册表格,每个用户必须输入username
,password
,email
和phone no.
,现在我必须限制用户输入最多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;
}
或者你可以在你的UIViewController
接口
@interface YourViewController()<UITextFieldDelegate>
// YourViewController.m
@end
定义UITextFieldDelegate
协议,然后实现在你的类以下shouldChangeCharactersInRange
任务。
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
NSUInteger newLength = [textField.text length] + [string length] - range.length;
return (newLength > 15) ? NO : YES;
}
这是错误的因为它会考虑文本字段的文本由于用户typi而改变之前的长度而不是它会是什么。检查已被标记为重复的问题以获取更多详细信息。 –
@deepak现在.......... –
试试这个:
-(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;
}
[iPhone SDK:设置最大字符长度的TextField]的
可能重复(http://stackoverflow.com/questions/433337/iphone-sdk-set-max-字符长度文本框) –
这个职位可能有你在找什么: http://stackoverflow.com/questions/433337/iphone-sdk-set-max-character-length-textfield – AlexFZ