【发布时间】:2017-10-22 02:50:16
【问题描述】:
我正在使用适用于 iOS 的 Google Places API,并且可以成功检索附近的地点并将地址显示为字符串。我正在尝试做的是提取地址组件(例如城市)以存储在数据库中。
文档表明 GMSPlace 有一个 addressComponents 属性(一个数组),但我似乎不知道如何使用这个属性。
下面的代码将整个地址设置为标签的文本,但我无法超越:
编辑 ---- 添加了显示我如何尝试访问地址组件的代码
venueLabel.isHidden = false
venueLabel.text = selectedPlace?.name
addressLabel.isHidden = false
addressLabel.text = selectedPlace?.formattedAddress
let addressComponents = selectedPlace?.addressComponents
for component in addressComponents! {
let city = component["city"] //Error Type GMSPaceAddressComponent has no subscript members
print(city)
}
【问题讨论】:
-
请分享完整代码。
-
API 文档中提到了
addressComponents的所有详细信息。看到这个developers.google.com/places/ios-api/reference/… -
@Shabirjan 刚刚使用附加代码进行了编辑
-
您需要检查 component.type == "city" 然后检索 component.name 以获取城市信息
-
让 addressComponent = place?.addressComponents?.first(where: {$0.types.contains("city")})
标签: ios swift3 google-places-api