jjzjj

NSmeasurement

全部标签

ios - 在 Core Data 中存储 NSMeasurement 或 NSUnit

iOS10引入了新的测量和单位类别。我想在我的核心数据数据库中存储一个NSMeasurement或NSUnit对象,以便我可以在我的数据库中存储不同的测量值。有什么好的方法吗?由于我的应用程序只会使用所有可用单位的一个子集,理论上我可以创建单位的字符串表示形式,并在需要时使用switch语句从中获取实际的单位类。但这感觉过于复杂且容易出错。 最佳答案 这两个类都符合NSCoding,因此您可以将它们存储为“可转换”属性。作为可转换对象,您可以直接从属性读取/写入对象值,CoreData会根据需要自动在对象类型和NSData之间进行转

swift NSmeasurement UnitMass.stones

在尝试快速测量时,我遇到了一个有问题的值转换。如下图所示,kg到lb是正确的,但是kg到stone的转换是不正确的,除非我没有正确理解转换。letpounds=Measurement(value:75,unit:UnitMass.kilograms).converted(to:UnitMass.pounds)//165.34...lb(correct)letstones=Measurement(value:75,unit:UnitMass.kilograms).converted(to:UnitMass.stones)//476.272...st(shouldbe11.81)