当先锋百科网

首页 1 2 3 4 5 6 7

UITextView或UITextField字数限制,输入时的限制,复制粘贴时的限制


字数限制有三种方法

在代理方法“- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string”或“- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text”中实现两种方法


方法1(只能在输入时限制,复制粘贴时无法限制)

if (range.location > MaxCharacterNumber - 1)

{

    textField.text = [textField.text substringToIndex:MaxCharacterNumber];

    return NO;

}


方法2(输入及复制粘贴时均可限制)

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

if (temp.length > MaxCharacterNumber)

{

    textField.text = [temp substringToIndex:MaxCharacterNumber];

    return NO;

}


在代理方法“- (void)textViewDidChange:(UITextView *)textView”中实现一种方法

方法3(复制粘贴时均可限制)

NSString *textString = textView.text;

if (textString.length > MaxCharacterNumbers + 1)

{

    textView.text = [textString substringToIndex:MaxCharacterNumbers];

    return;

}


注意:“NSString *temp = [textField.text stringByReplacingCharactersInRange:range withString:string];”为字符范围替换为指定的字符串,返回新的字符串。


转载于:https://my.oschina.net/potato512/blog/647819