测量格式化程序:值和单位之间的空格

ale*_*wis 7 string swift ios10 measurementformatter

我有一个Measurement属性:

let measurement = Measurement(value: 10000.0, unit: UnitMass.grams)
Run Code Online (Sandbox Code Playgroud)

我想打印为字符串。我使用以下内容MeasurementFormatter

let measurementFormatter = MeasurementFormatter()
measurementFormatter.unitStyle = .short
measurementFormatter.numberFormatter.numberStyle = .decimal

print(measurementFormatter.string(from: measurement))
Run Code Online (Sandbox Code Playgroud)

打印10,000g.

我怎样才能打印它10,000 g,即在值和单位之间有一个空格?

Leo*_*bus 8

问题是你正在使用 style .short。只需注释掉这一行,它就会在它们之间显示一个空格:

let measurement = Measurement(value: 10000, unit: UnitMass.grams)
let measurementFormatter = MeasurementFormatter()
// measurementFormatter.unitStyle = .short
measurementFormatter.unitOptions = .providedUnit
measurementFormatter.numberFormatter.numberStyle = .decimal
print(measurementFormatter.string(from: measurement))    // "10,000 g\n"
Run Code Online (Sandbox Code Playgroud)