美文网首页
每4个添加一个空格,同时限制输入字数

每4个添加一个空格,同时限制输入字数

作者: 白鹿Divella | 来源:发表于2016-10-13 23:28 被阅读188次

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

{

NSString * toBeString = [textField.text stringByReplacingCharactersInRange:range withString:string]; //得到输入框的内容

if (_cardIDtextFiled == textField){

//检测是否为纯数字

if ([self isPureInt:string]) {

//添加空格,每4位之后,4组之后不加空格,格式为xxxx xxxx xxxx xxxx xxxxxxxxxxxxxx

if (textField.text.length % 5 == 4 && textField.text.length < 22) {

textField.text = [NSString stringWithFormat:@"%@ ", textField.text];

}

//只要30位数字

if ([toBeString length] >= 19+4+11)

{

toBeString = [toBeString substringToIndex:19+4+11];

_cardIDtextFiled.text = toBeString;

[_cardIDtextFiled resignFirstResponder];

return NO;

}

}

else if ([string isEqualToString:@""]) { // 删除字符

if ((textField.text.length - 2) % 5 == 4 && textField.text.length < 22) {

textField.text = [textField.text substringToIndex:textField.text.length - 1];

}

return YES;

}

else{

return NO;

}

return YES;

}

return YES;

}

- (BOOL)isPureInt:(NSString *)string{

NSScanner* scan = [NSScanner scannerWithString:string];

int val;

return [scan scanInt:&val] && [scan isAtEnd];

}

相关文章

网友评论

      本文标题:每4个添加一个空格,同时限制输入字数

      本文链接:https://www.haomeiwen.com/subject/ynlgyttx.html