GMSAutocompleteViewController 获取完整地址
GMSAutocompleteViewController get complete address
我使用 GMSAutocompleteViewController 是为了让用户搜索地址。
用户选择建议后,如何从 GMSAutocompleteViewController 获取地址详细信息?
我正在使用
func viewController(_ viewController: GMSAutocompleteViewController, didAutocompleteWith place: GMSPlace) {
获取 UI 控制器的结果。然后我进行反向地理编码以获得 GMSAddress。代码是这样的:
GMSGeocoder().reverseGeocodeCoordinate(place.coordinate, completionHandler: { (response:GMSReverseGeocodeResponse?, err:Error?) in
...
let firstAddr:GMSAddress = (response?.firstResult())!
我能够从 firstAddr 获得城市、国家。但我需要街道和街道号码的单独结果以防万一。我尝试使用 thoroughfare 和 addressLine1,addressLine2 但没有结果,他们 return 街道和街道号码的组合,我不知道没有办法拆分它。
获取方式简单吗?
要获取完整的地址字符串,请使用
place.formattedAddress
要获取地址中的每个字段,请使用 addressComponents 数组。
place.addressComponents
我使用 GMSAutocompleteViewController 是为了让用户搜索地址。 用户选择建议后,如何从 GMSAutocompleteViewController 获取地址详细信息? 我正在使用
func viewController(_ viewController: GMSAutocompleteViewController, didAutocompleteWith place: GMSPlace) {
获取 UI 控制器的结果。然后我进行反向地理编码以获得 GMSAddress。代码是这样的:
GMSGeocoder().reverseGeocodeCoordinate(place.coordinate, completionHandler: { (response:GMSReverseGeocodeResponse?, err:Error?) in
...
let firstAddr:GMSAddress = (response?.firstResult())!
我能够从 firstAddr 获得城市、国家。但我需要街道和街道号码的单独结果以防万一。我尝试使用 thoroughfare 和 addressLine1,addressLine2 但没有结果,他们 return 街道和街道号码的组合,我不知道没有办法拆分它。
获取方式简单吗?
要获取完整的地址字符串,请使用
place.formattedAddress
要获取地址中的每个字段,请使用 addressComponents 数组。
place.addressComponents