在UITextField中输入double类型的数字时,有时需要限制小数点输入的位数,实现起来也是非常方便的,只需要在UITextField的一个代理方法中实现就行了,代码示例如下:
//限制只能输入小数点后两位
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSMutableString * futureString = [NSMutableString stringWithString:textField.text];
[futureString insertString:string atIndex:range.location];
NSInteger flag = 0;
const NSInteger limited = 2;
for (NSInteger i = futureString.length-1; i >= 0; i--) {
if ([futureString characterAtIndex:i] == '.') {
if (flag > limited) {
return NO;
}
break;
}
flag++;
}
return YES;
}