从 swift 1.2 迁移后 swift2 中的 healthKit 错误
Posted
技术标签:
【中文标题】从 swift 1.2 迁移后 swift2 中的 healthKit 错误【英文标题】:healthKit error in swift2 after migration from swift 1.2 【发布时间】:2015-08-05 08:03:07 【问题描述】:我有这段代码要求在Swift 1.2
工作的写权限,升级到Swift 2.0
后我收到一个奇怪的错误:
... '_' is not convertible to 'HKWorkoutType'
出现错误的代码行:
let healthKitTypesToWrite = Set(arrayLiteral:[
HKObjectType.quantityTypeForIdentifier(HKQuantityTypeIdentifierActiveEnergyBurned),
HKObjectType.quantityTypeForIdentifier(HKQuantityTypeIdentifierDistanceWalkingRunning),
HKQuantityType.workoutType()
])
有什么想法吗?
【问题讨论】:
如果我的回答对你来说更安全,可以考虑投票:) 我还不允许投票,只要我这样做,我会的,谢谢 完成,顺便说一句:我发布了另一个问题,有一个奇怪的错误,也许你也知道那个问题的答案 【参考方案1】:为前两项添加!
:
let healthKitTypesToWrite = Set(arrayLiteral:
[
HKObjectType.quantityTypeForIdentifier(HKQuantityTypeIdentifierActiveEnergyBurned)!,
HKObjectType.quantityTypeForIdentifier(HKQuantityTypeIdentifierDistanceWalkingRunning)!,
HKQuantityType.workoutType()
])
这是必需的,因为 quantityTypeForIdentifier
返回 HKQuantityType?
【讨论】:
以上是关于从 swift 1.2 迁移后 swift2 中的 healthKit 错误的主要内容,如果未能解决你的问题,请参考以下文章
迁移到惯用的 Swift 2 的清单(又名 Swift 2 转换指南在哪里)?
Alamofire 自定义响应从 Alamofire v1.3 迁移到 3.0(和 Swift 2 语法)