电话号码中间插入空格

1
[textField addTarget:self action:@selector(textFieldEditing:) forControlEvents:UIControlEventEditingChanged];
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
static NSInteger _phoneLength = 0;

- (void)textFieldEditing:(UITextField *)textField {

if (textField.text.length > _phoneLength) {
if (textField.text.length == 4 || textField.text.length == 9 ) {
NSMutableString *str = [[NSMutableString alloc ] initWithString:textField.text];
[str insertString:@" " atIndex:(textField.text.length - 1)];
textField.text = str;
}

if (textField.text.length >= 13 ) { // 输入完成
textField.text = [textField.text substringToIndex:13];
}

_phoneLength = textField.text.length;

} else if (textField.text.length < _phoneLength) { // 删除
if (textField.text.length == 4 || textField.text.length == 9) {
textField.text = [textField.text substringToIndex:(textField.text.length - 1)];
}

_phoneLength = textField.text.length;
}
}