【发布时间】:2015-06-24 06:48:36
【问题描述】:
iOS- 使用下面的代码,我可以自动添加连字符,但无法在文本字段中正确进行编辑:- 编辑就像单击以在填充的数字之间插入任何数字时一样,这将在数字的末尾进行编辑并且进一步不要正确删除该号码。任何人都可以帮我解决IOS 假设用户第一次输入像 123-456-7890 这样的号码。之后他想用 7 更改数字 4,然后 7 数字没有插入到正确的位置。并且会超过 10 位数字的限制。我想解决这个问题。给我编辑代码的解决方案。不要只擦除代码中的空格并再次显示给我
-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
if(textField == txtUserName)
{
if (range.location == 12)
{
return NO;
}
if (range.length == 0 && ![[NSCharacterSet decimalDigitCharacterSet] characterIsMember:[string characterAtIndex:0]])
{
return NO;
}
if (range.length == 0 && (range.location == 3 || range.location == 7))
{
txtUserName.text = [NSString stringWithFormat:@"%@- %@",txtUserName.text,string];
return NO;
}
if (range.length == 1 &&(range.location==4 ||range.location ==7))
{
range.location--;
range.length = 2;
txtUserName.text = [txtUserName.text stringByReplacingCharactersInRange:range withString:@""];
NSLog(@"Nisha..%@",txtUserName.text);
return NO;
}
}
return YES;
}
【问题讨论】:
标签: ios objective-c