Итак, часть кода выглядит так
- (void)textFieldDidEndEditing:(UITextField *)textField
{
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setNumberStyle:NSNumberFormatterCurrencyStyle];
NSNumber *currency = [NSNumber numberWithDouble:[self.SalesAmounttext.text doubleValue]];
self.SalesAmounttext.text = [formatter stringFromNumber:currency];
}
Приведенный выше код означает, что если я введу 499 в текстовое поле, текст будет преобразован в 499,00 долларов США. Если я очистю ВСЕ текстовое поле и повторно введу другое число, скажем, 599, текст будет преобразован в 599,00 долларов США. Все это правильное и ожидаемое поведение.
Однако, если я случайно верну $599,00 только к $ или $5, а затем введу новое число, такое как 509, и покину текстовое поле, мой вывод текстового поля станет равным $0,00. Кто-нибудь знает, что я делаю неправильно?