gpt4 book ai didi

ios - 无法转换 NSSet 类型的值?预期参数类型 Set

转载 作者:行者123 更新时间:2023-11-28 09:55:19 25 4
gpt4 key购买 nike

我 2 天前才开始学习 Swift,所以如果这听起来像是一个愚蠢的问题,我提前道歉。

我正在按照本教程从 HealthKit 获取基本用户数据:https://www.natashatherobot.com/healthkit-getting-fitness-data/但是当我编译它时,出现以下错误:

Cannot convert value of type NSSet? to expected argument type Set <'HKSampleType>

func requestHealthKitAuthorization(dataTypesToWrite: NSSet?, dataTypesToRead: NSSet?) {
healthStore?.requestAuthorizationToShareTypes(dataTypesToWrite, readTypes: dataTypesToRead, completion: { (success, error) -> Void in
if success {
println("success")
} else {
println(error.description)
}
})
}

我尝试了网上找到的各种答案,但都没有成功。

任何提示/想法将不胜感激!

最佳答案

你好像找到了一篇很久很久以前写在 Swift 1 时代的旧文章。我假设您使用的是最新发布的 Xcode 版本(7.3.1,包括 Swift 2.2.1)。

显示错误的方法可以这样重写:

func requestHealthKitAuthorization(dataTypesToWrite: Set<HKSampleType>?, dataTypesToRead: Set<HKObjectType>?) {
healthStore?.requestAuthorizationToShareTypes(dataTypesToWrite, readTypes: dataTypesToRead, completion: { (success, error) -> Void in
if success {
print("success")
} else {
print(error?.description ?? "unknown error")
}
})
}
  • 前两个参数的两种类型已经改为Set<HKSampleType>?Set<HKObjectType>? .(报错提示第一个不匹配。)

  • completion 的可选性处理程序的参数已更改。

  • printlnprint统一为新print .

但是您可能(很可能)会在这篇古文之后发现许多其他困难。

我建议您找到另一篇针对您正在使用的相同版本的 Xcode/Swift 撰写的文章

关于ios - 无法转换 NSSet 类型的值?预期参数类型 Set<HKSampleType>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38409673/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com