如何使用Google Maps SDK获取地址?

问题描述

我有一个功能,我尝试通过其经/纬度为用户获取当前地址。但我说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
}

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...