问题描述
我有一个功能,我尝试通过其经/纬度为用户获取当前地址。但我说Cannot convert value of type '(GMSReverseGeocodeResponse,_) -> Void' to expected argument type 'GMSReverseGeocodeCallback' (aka '(Optional<GMSReverseGeocodeResponse>,Optional<Error>) -> ()')
func googleMapsReverseGeocoding(){
let gmsGeocoder = GMSGeocoder()
gmsGeocoder.reverseGeocodeCoordinate((CLLocationCoordinate2DMake(currentLocation.coordinate.latitude,currentLocation.coordinate.longitude))) { //This is where I get the error.
(gmsReverseGeocodeResponse: GMSReverseGeocodeResponse!,error: NSError!) -> Void in
let gmsAddress: GMSAddress = gmsReverseGeocodeResponse.firstResult()
print("\ncoordinate.latitude=\(gmsAddress.coordinate.latitude)")
print("coordinate.longitude=\(gmsAddress.coordinate.longitude)")
print("thoroughfare=\(gmsAddress.thoroughfare)")
print("locality=\(gmsAddress.locality)")
print("subLocality=\(gmsAddress.subLocality)")
print("administrativeArea=\(gmsAddress.administrativeArea)")
print("postalCode=\(gmsAddress.postalCode)")
print("country=\(gmsAddress.country)")
print("lines=\(gmsAddress.lines)")
}
}
有人可以让我知道我在做什么错吗?
解决方法
您需要
gmsGeocoder.reverseGeocodeCoordinate((CLLocationCoordinate2DMake(currentLocation.coordinate.latitude,currentLocation.coordinate.longitude))) {
(response,error) in
}