试图找出 Swift 中的 CompletionHandler?
Trying to figure out CompletionHandler in Swift?
所以我正在尝试使用 Phillips HUE 灯进行一些编程,并且我已经制作了一个桥接头并导入了必要的信息以将 Hue SDK 与 Swift 一起使用,但是所有的指导都是为 Objective-C 写的。我在 Swift:
中遇到 understanding/declaring 这个函数的问题
// Start search for bridges
[self.bridgeSearch startSearchWithCompletionHandler:^(NSDictionary *bridgesFound) {
// Search is complete, handle results (dictionary contains IP and mac addresses of bridges found)
[self showBridgesFound:bridgesFound];
}
当我在 Swift 中调用它时,我输入 bridgeSearch.startSearch() 并且 Xcode 自动添加了一个完成处理程序
//Search for bridges
let bridgeSearch: PHBridgeSearching = PHBridgeSearching()
bridgeSearch.startSearch { ([AnyHashable : Any]?) in
//code
}
我知道如何将信息(找到的 IP 地址)存储到 Obj-C 中的 NSDictionary 中,但我不确定在将 IP 地址存储到某种数据结构方面该怎么做。
谢谢!
问题仅仅是你没有给传入的参数起任何名字。给它一个:
bridgeSearch.startSearch { bridgesFound in
// code involving bridgesFound
}
所以我正在尝试使用 Phillips HUE 灯进行一些编程,并且我已经制作了一个桥接头并导入了必要的信息以将 Hue SDK 与 Swift 一起使用,但是所有的指导都是为 Objective-C 写的。我在 Swift:
中遇到 understanding/declaring 这个函数的问题// Start search for bridges
[self.bridgeSearch startSearchWithCompletionHandler:^(NSDictionary *bridgesFound) {
// Search is complete, handle results (dictionary contains IP and mac addresses of bridges found)
[self showBridgesFound:bridgesFound];
}
当我在 Swift 中调用它时,我输入 bridgeSearch.startSearch() 并且 Xcode 自动添加了一个完成处理程序
//Search for bridges
let bridgeSearch: PHBridgeSearching = PHBridgeSearching()
bridgeSearch.startSearch { ([AnyHashable : Any]?) in
//code
}
我知道如何将信息(找到的 IP 地址)存储到 Obj-C 中的 NSDictionary 中,但我不确定在将 IP 地址存储到某种数据结构方面该怎么做。
谢谢!
问题仅仅是你没有给传入的参数起任何名字。给它一个:
bridgeSearch.startSearch { bridgesFound in
// code involving bridgesFound
}