我需要阅读哪个 swift 文档或视频才能了解此 ResultsHandler 的工作原理?
Which swift Document or video I need to read for me to understand how this ResultsHandler works?
嗨,我是一名新手编码员,编码是为了乐趣。
我想从 iPhone
中获取我的步数
所以我开始学习Xcode和swift。
我会写 bash 脚本和一点点 python。
但是后面的我实在看不懂
来自https://developer.apple.com/documentation/healthkit/hkstatisticscollectionquery
query.initialResultsHandler = {
query, results, error in
// My Understanding This Handler is a unknown type or thing for me 我怎么知道它是什么以及如何从苹果的网页上使用它?
从阅读苹果的页面我可以看出它有三个组成部分,
声明说它是一个变量?喜欢
var initialResultsHandler: ((HKStatisticsCollectionQuery, HKStatisticsCollection?, Error?) -> Void)? { get set }
所以它是一个包含三样东西的变量?所以这是一个元组?并且可以获取和设置!?
所以我认为上面的代码意味着将 var query 放入 hander 的 HKStatisticsCollectionQuery,从 hander 的 HKStatisticsCollectionQuery 获取 var 结果并将 handle 的 Error 放入本地 var error
最重要的是错误后面的"in"是什么?
我只知道你可以 for xxxx in yyyy 并创建一个循环但是没有 for use in 意味着什么?什么文件对此进行了解释?
guard let statsCollection = results else {
// Perform proper error handling here
fatalError("*** An error occurred while calculating the statistics: \(error?.localizedDescription) ***")
}
let endDate = NSDate()
guard let startDate = calendar.dateByAddingUnit(.Month, value: -3, toDate: endDate, options: []) else {
fatalError("*** Unable to calculate the start date ***")
}
这就是您正在查看的闭包。这三个变量是您命名为 query
、results
和 error
的闭包的输入参数。您也可以给它们起任何其他名称,因为它们只存在于闭包内,并且只有它们的类型用于函数类型签名。
in
关键字表示闭包体的开始。
有关该主题的更多信息,请查看 Closures chapter of the Swift Programming Language。
嗨,我是一名新手编码员,编码是为了乐趣。 我想从 iPhone
中获取我的步数所以我开始学习Xcode和swift。
我会写 bash 脚本和一点点 python。
但是后面的我实在看不懂
来自https://developer.apple.com/documentation/healthkit/hkstatisticscollectionquery
query.initialResultsHandler = {
query, results, error in
// My Understanding This Handler is a unknown type or thing for me 我怎么知道它是什么以及如何从苹果的网页上使用它? 从阅读苹果的页面我可以看出它有三个组成部分, 声明说它是一个变量?喜欢
var initialResultsHandler: ((HKStatisticsCollectionQuery, HKStatisticsCollection?, Error?) -> Void)? { get set }
所以它是一个包含三样东西的变量?所以这是一个元组?并且可以获取和设置!?
所以我认为上面的代码意味着将 var query 放入 hander 的 HKStatisticsCollectionQuery,从 hander 的 HKStatisticsCollectionQuery 获取 var 结果并将 handle 的 Error 放入本地 var error
最重要的是错误后面的"in"是什么? 我只知道你可以 for xxxx in yyyy 并创建一个循环但是没有 for use in 意味着什么?什么文件对此进行了解释?
guard let statsCollection = results else {
// Perform proper error handling here
fatalError("*** An error occurred while calculating the statistics: \(error?.localizedDescription) ***")
}
let endDate = NSDate()
guard let startDate = calendar.dateByAddingUnit(.Month, value: -3, toDate: endDate, options: []) else {
fatalError("*** Unable to calculate the start date ***")
}
这就是您正在查看的闭包。这三个变量是您命名为 query
、results
和 error
的闭包的输入参数。您也可以给它们起任何其他名称,因为它们只存在于闭包内,并且只有它们的类型用于函数类型签名。
in
关键字表示闭包体的开始。
有关该主题的更多信息,请查看 Closures chapter of the Swift Programming Language。