0
这里是我的代码:的NumberFormatter()不会强制小数位
extension NSDecimalNumber {
func getFormattedDecimalString() -> String {
let numberFormatter = NumberFormatter()
numberFormatter.minimumFractionDigits = 2
numberFormatter.maximumFractionDigits = 2
numberFormatter.numberStyle = NumberFormatter.Style.decimal
if let decimalString = numberFormatter.string(from: self) {
return decimalString
} else {
return ""
}
}
}
如果我有数量4.11,这表明4.11。如果我有4.1,它显示4.1。如果我有数字4,则显示4.我希望它显示4.11,4.10和4.00。我认为这是minimumFractionDigits的目的。我也尝试添加行numberFormatter.alwaysShowsDecimalSeparator = true
,这没有做什么。
无法重现。你能否提供证明问题的[mcve]? –
In numberFormatter.string(from:self)自我指示的原因是无法重现您的问题。它对我的工作很好 – AkBombe
@AkBombe它是NSDecimalNumber的一个扩展(我编辑了我的文章)。我把它放在一个普通的函数中,它工作,但这是行不通的。我从核心数据中获取NSDecimalNumber。 – Questioner