以前在Swift 1.2中可以正常工作,但是现在出现错误:

“无法使用类型为'(String,completedHandler:([AnyObject] !, NSError!)-> Void)'的参数列表调用'geocodeAddressString''”

geocoder.geocodeAddressString(address, completionHandler: {(placemarks: [AnyObject]!, error: NSError!) -> Void in
            if let placemark = placemarks?[0] as? CLPlacemark {
                let annotation = MKPointAnnotation()

编辑答案:
geocoder.geocodeAddressString(address, completionHandler: {(placemarks: [CLPlacemark]?, error: NSError?) -> Void in

最佳答案

完成处理程序中的变量未正确设置,因此您不包含声明,因此-

coder.geocodeAddressString("1 infinite loop, cupertino, ca") { (placemarks, error) -> Void in

    if let firstPlacemark = placemarks?[0] {
        print(firstPlacemark)
    }
}

请注意,由于类型推断知道,可选的强制类型转换不是必需的,将为CLPlacemark

08-07 17:22