2017-01-18 9 views
1

Немного путаницы здесь. Я просто хочу добавить разделитель валют, когда пользователь вводит значение и корректирует положение разделителей, когда пользователь редактирует это значение. Я попробовал это в этом, но это имеет дело только с недавно введенным символомкак добавить разделитель валюты или купюры валюты, когда пользователь вводит значение в UITextField

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

если один знает любой лучший метод делегата, пожалуйста ....

ответ

0

Проверить ниже код, может помочь и изменить в соответствии с вашими требованиями:

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

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

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

    [currencyFormatter setNumberStyle:NSNumberFormatterCurrencyStyle]; 
    NSString *formattedCurrency = [currencyFormatter stringFromNumber:amount]; 

    if ([formattedCurrency isEqualToString:@"NaN"]) { 

     [email protected]""; 
    } 
    textField.text=[NSString stringWithFormat:@"%@",formattedCurrency]; 

    return YES; 

} 
+0

Хорошо, позвольте мне упростить его, в моем случае просто хочу добавить «.». после каждых трех цифр с правой стороны – jaymala

+0

Выше код будет автоматически определять размер в соответствии с локалью. –

+0

Неверный ввод, проверьте edit @ jaymala –

 Смежные вопросы

  • Нет связанных вопросов^_^