我正在努力访问 healthkit 的心率数据并按照此处的文档进行操作:https://developer.apple.com/reference/healthkit/hksamplequery 。他们调用使用以下代码片段
let calendar = NSCalendar.currentCalendar()
let now = NSDate()
let components = calendar.components([.Year, .Month, .Day], fromDate: now)
然而,调试器捕获 NSCalendar.currentCalendar() 因为无法调用非函数类型日历的值。我按照 IDE 的建议将其更改为 NSCalendar.current,但是第三行出现问题,指出它无法在属性初始值设定项中使用实例成员“calendar”。
所以我的问题是 NSCalendar.current 和 NSCalendar.currentCalendar() 之间有什么区别,我做错了什么?
非常感谢您提供的任何帮助。
最佳答案
区别在于您使用的是 Swift 3,但查看的是 Swift 2.x 的说明。 API 已更改。这是 Swift 3 的等效项:
let calendar = Calendar.current
let now = Date()
let components = calendar.dateComponents([.year, .month, .day], from: now)
关于swift3 - NSCalendar.current 和 NSCalendar.currentCalendar() 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40120367/