【问题标题】:Use localized unit of appropriate magnitude in iOS 10在 iOS 10 中使用适当大小的本地化单位
【发布时间】:2017-01-31 14:10:55
【问题描述】:

我在 iOS 10 中使用新的Measurement API 来获取本地化字符串以进行长度测量:

let length = Measurement(value: 200, unit: UnitLength.centimeters)
let str = MeasurementFormatter().string(from: length)

但是,对于我的(英国)语言环境,我会返回 "0.001 mi",这不是一个很有帮助的显示字符串。相反,我更希望得到一个使用适当单位(例如"6.56 feet""2.19 yards")的字符串来表示测量的大小。这是否可以通过 API 实现,还是我最好使用使用 SI 前缀的自定义解决方案?

【问题讨论】:

标签: ios swift units-of-measurement


【解决方案1】:

解决方案很简单:

let length = Measurement(value: 200, unit: UnitLength.centimeters)
let f = MeasurementFormatter()
f.unitOptions = MeasurementFormatter.UnitOptions.naturalScale
f.numberFormatter.maximumFractionDigits = 2 
let str = MeasurementFormatter().string(from: length)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-02-12
    • 1970-01-01
    • 2016-12-21
    • 2011-11-27
    • 2017-02-07
    • 1970-01-01
    • 2014-04-19
    相关资源
    最近更新 更多