У меня есть следующий код, который отлично работает, за исключением сохранения после десятичного числа 0.Цель состоит в том, чтобы отформатировать пользовательский ввод в качестве пользовательских типов в текстовом поле
MyClass {
static let formatter: NumberFormatter = {
let formatter = NumberFormatter()
formatter.numberStyle = .decimal
formatter.locale = NSLocale.current
formatter.maximumFractionDigits = 2
return formatter
}()
}
extension Double {
func formatted() -> String{
return MyClass.amountFormatter.string(from: NSNumber(value: self)) ?? "0"
}
}
Это дает мне следующий вывод
- 1256. отформатировано - 1256
- 1256.00.отформатировано - 1256 (необходимо сохранить 0 после десятичного числа, желаемый результат - 1256.00 )
- 1256.05.форматировано - 1,256.05
- 1256.80.форматировано - 1256,8 (необходимо сохранить 0 последесятичное, желаемый результат 1 256,50 )
- 1256,5789847.форматировано - 1,256,57
Как добиться желаемого результата