我正在尝试将其输入到您键入电话号码的位置,而键入时,它会意识到有这么多字符并添加到括号中:(xxx)xxx-xxxx。我已经查看Stack Overflow对我的问题的任何类似答案,并且我出现了this link。
但是,我不能使用十进制形式的转换来解决我的问题,但是我可能应该使用textField:shouldChangeCharactersInRange:withString:
方法获得更多的知识。我也需要在电话号码中添加连字符,但想想我是否可以为其他人做这个。我可以为另一个做。
有什么建议吗?
答案 0 :(得分:3)
这个怎么样:
-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
if (textField.text.length == 0)
textField.text = [NSString stringWithFormat:@"(%@",textField.text];
if (textField.text.length == 4)
textField.text = [NSString stringWithFormat:@"%@) ",textField.text];
if (textField.text.length == 9)
textField.text = [NSString stringWithFormat:@"%@-",textField.text];
if (textField.text.length > 13)
return NO;
return YES;
}