У меня возникла проблема, но, похоже, не удалось найти решение. У меня есть текстовое поле, в котором пользователь вводит числа. Проблема заключается в том, что когда пользователь вводит последнюю цифру как ноль после десятичной точки, это не принимает.eg - 42,70 печатается как 42.7.Find код нижеNsNumberFormatter не дает корректного результата
NSNumberFormatter *_numberFormatter =[NSNumberFormatter new];
_numberFormatter.maximumFractionDigits=2;
_numberFormatter.minimumIntegerDigits=1;
_numberFormatter.roundingMode=kCFNumberFormatterRoundCeiling;
_numberFormatter.allowsFloats=YES;
[email protected]",";
_numberFormatter.usesGroupingSeparator=YES;
_numberFormatter.groupingSize=3;
_numberFormatter.minimum=[NSNumber numberWithInt:0];
[_numberFormatter setLenient:YES];
[_numberFormatter setUsesSignificantDigits:NO];
и
NSNumber *number = [nf numberFromString:combinedString];
NSString *formattedString = [nf stringFromNumber:number];
отформатирована строка печать Введенного значения SANs 0, если ввести в последнем месте, но он печатает правильный номер, если любая другая цифра есть, как и 42,78, напечатано, как это было, но 43,70 печатается как 43,7.
я упускаю установку некоторых parameters.Any помощи необходимо
Заранее спасибо
Я пробовал это, но тогда даже если пользовательские типы 4 в текстовом поле, он будет возвращаться как 4.00, и он не сможет ввести далее. Так что не может этого сделать. –
@dead_soldier, попробуйте использовать два форматирования, один для ввода, один для вывода – vikingosegundo
@dead_soldier: Вы заменяете текст в текстовом поле во время ввода пользователем? –