Я пытаюсь отформатировать текстовое поле метки так, чтобы его текст печатал только значения с определенным количеством значащих цифр.Я использую функциональные возможности расширения Swift и класс NumberFormatter , но, хотя код соответствует требованиям без ошибок, нужная мне функциональность (т.е. максимум 6 значащих цифр) не реализуется.
Вот мой код расширения:
extension Double {
func formatNumbers() -> String {
let numberFormat = NumberFormatter()
let number = NSNumber(value: self)
numberFormat.usesSignificantDigits = true
numberFormat.minimumFractionDigits = 0
return String(numberFormat.string(from: number) ?? "")
}
}
А вот когда я вызываю метод расширения:
ConsoleValue.text! = "\(tempResult.formatNumbers())"
, где ConsoleValue - это UILabel и tempResult - это Double var .
Может ли кто-нибудь помочь мне с тем, что я делаю неправильно?