我有一个 iPhone 应用程序,我们在其中使用 UIKeyboardTypeDecimalPad 进行输入,在我们开始本地化应用程序之前,它一直运行良好,我们现在面临的问题是,当语言切换为法语或德语时,小数点键盘从句号 ( .
) 变为逗号 ( ,
)。
我们目前正在运行此代码以限制多个小数点的输入,即 12.4.4 使用此代码它将只允许输入 12.4
这工作正常,但现在我们还需要检查逗号,如果它有逗号,还需要转换用户输入以进行我们的计算
有没有更好的方法来限制键盘上的逗号和句号输入?
-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
NSString *currentText = textField.text;
if ([currentText rangeOfString:@"." options:NSBackwardsSearch].length == 0) {
return YES;
} else {
if ([string rangeOfString:@"." options:NSBackwardsSearch].length == 0) {
return YES;
} else {
return NO;
}
}
return NO;
}
谢谢亚伦