我正在尝试翻译以下Objective-C回调:
typedef void (^MKLocalSearchCompletionHandler)(MKLocalSearchResponse *response, NSError *error);
...进入等效的Swift回调:
typealias MKLocalSearchCompletionHandler = (MKLocalSearchResponse!, NSError!) -> Void
......显然我在这里迷路了。
什么是Swift回调的正确“shell”或“结构”?
答案 0 :(得分:2)
语法不正确。它应该是
let handler : MKLocalSearchCompletionHandler = { (r: MKLocalSearchResponse?, e: NSError?) in /*do something*/ }
最好省略参数类型,让编译器推断它
let handler : MKLocalSearchCompletionHandler = { r, e in /*do something*/ }
顺便说一下,当你下次发帖时,请使用文字而不是图片。所以我可以复制&粘贴&修改你的代码,也可以被其他人搜索。