HKUnit 中的自定义单位用于简单测量,如质量、长度和体积

问题描述 投票:0回答:1

HKQuantityHKUnit 支持所有常用测量单位、SI 和其他单位,例如

gram()
pound()
stone()

HealthKit 类还支持自定义复杂单位,例如“英尺磅”、“米每秒”或“米每秒平方”,通过

unitMultiplied(by:)
unitDivided(by:)
、和
unitRaised(toPower:)

单位类支持大多数标准 SI 单位(米、秒和克)、带前缀的 SI 单位(厘米、毫秒和千克)以及等效的非 SI 单位(英尺、分钟和磅)。 HealthKit 还支持通过数学组合现有单位来创建复杂单位。

HealthKit 是否支持完全自定义的测量单位来建模简单的非复杂测量,例如质量、长度或体积?

想象一下麻省理工学院的学生项目,用于桥上步行计步器应用程序。该应用程序肯定需要以 Smoot 单位计算和显示距离。

如何在 HealthKit

smoot()
中对
HKUnits
进行建模?

ios swift healthkit units-of-measurement measurement
1个回答
0
投票

HealthKit共享的目的是让不同的应用程序能够贡献和利用健康数据。为此,HealthKit 存储中记录的数据需要采用通用单位。

如果您要在 Smoots 中记录距离,那么这对于读取数据的任何其他应用程序都毫无意义。

在应用程序中显示数据是另一回事。如果您的应用程序想要以 Smoots 形式显示距离,只需将

UnitConverterLinear
应用于以米为单位记录的距离即可。

类似的东西

let metersToSmoots = UnitConverterLinear(coefficient:1.0/1.7)
© www.soinside.com 2019 - 2024. All rights reserved.