对输入钱数的textField的设置

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string

{

NSRange aRange = [textField.text rangeOfString:@"."];

if (aRange.location != NSNotFound && [string isEqualToString:@"."]) {

return NO;

}

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;

}

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

if (textField.text.length) {

NSDecimalNumber *decimalNumber = [NSDecimalNumber decimalNumberWithString:textField.text];

NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];

numberFormatter.numberStyle = NSNumberFormatterCurrencyStyle;

numberFormatter.currencySymbol = @"";

textField.text = [numberFormatter stringFromNumber:decimalNumber];

}

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容