2016-11-07 26 views
2

我希望能夠以本地化的形式格式化和打印速度。我發現了幾個可以做到的pod,但我正在尋找嵌入式解決方案(如果可能的話)。Swift中的格式化速度

目前我下一步:

let unit = HKUnit.meterUnit(with: .kilo).unitDivided(by: .hour()) 
let output = HKQuantity(unit: unit, doubleValue: 12.5).description 

但在這種情況下,我不能調整類似的東西使用h代替hr

回答

1

正如@Allan所說,我們必須使用MeasurementFormatter。查看下面的即用型解決方案。

import UIKit 
import HealthKit 

let value = NSMeasurement(doubleValue: 12.5, unit: UnitSpeed.milesPerHour) 
let formatter = MeasurementFormatter() 
formatter.numberFormatter.maximumFractionDigits = 2 
formatter.string(from: value as Measurement<Unit>) // prints 12.5 mph 
+0

你不用你的'unit' – fpg1503

0

description方法HKQuantity沒有返回一個本地化的值,它的意思是調試,而不是顯示。將HKQuantity實例轉換爲NSMeasurement並使用NSMeasurementFormatter(文檔here)來本地化要顯示的值。