textfield 输入字数的限制
使用UItextfielddelegate 代理方法
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string;
{
//string就是此时输入的那个字符 textField就是此时正在输入的那个输入框 返回YES就是可以改变输入框的值 NO相反
if ([string isEqualToString:@"\n"]) //按会车可以改变
{
return YES;
}
NSString * toBeString = [textField.text stringByReplacingCharactersInRange:range withString:string]; //得到输入框的内容
if (self.textfield == textField) //判断是否时我们想要限定的那个输入框
{
if ([toBeString length]>20 ) { //如果输入框内容大于20则弹出警告
textField.text = self.textfield.text;//[toBeString substringToIndex:self];
//新的ios9 alertview 的写法
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"提示" message:@"超过最大字数不能输入了" preferredStyle:UIAlertControllerStyleAlert];
[alert addAction:[UIAlertAction actionWithTitle:@"确定" style:UIAlertViewStyleDefault handler:^(UIAlertAction * _Nonnull action) {
}]];
// UIAlertView *alert = [[[UIAlertView alloc] initWithTitle:nil message:@"超过最大字数不能输入了" delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil] autorelease];
//
// [alert show];
[self presentViewController:alert animated:true completion:nil];
return NO;
}
}
return YES;
}