【发布时间】:2017-10-03 22:22:22
【问题描述】:
如果你有这样的代码,那么p 将是"2.99":
let price = 2.99
let p = String(format: "%.2f", price)
但是,如果你有这样的代码:
let priceNS: NSDecimalNumber = 2.99
let p2 = String(format: "%.2f", priceNS)
那么p2 就是"0.00"。
如何将NSDecimalNumber 格式化为这样的字符串? (NSDecimalNumber 是 SKProduct 中价格的存储方式)
【问题讨论】:
-
你应该使用
Decimal而不是 Swift 中的NSDecimalNumber。 -
@Alexander 它来自 Apple StoreKit API 价格属性
-
@LeoDabus 他们已经搭上桥梁
-
@Alexander 这对代码有什么帮助,例如:String(format: "%.2f", someSKProduct.price)
-
@Sausagedioxide 它没有,但它通过删除潜在的共享可变状态在其他情况下有所帮助
标签: ios swift nsdecimalnumber skproduct