如何从 GMSPlace 地址组件中提取街道、城市等

2024-06-19

我正在使用适用于 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)
            }

安全的 Swift 4.2 解决方案:

let name = place.addressComponents?.first(where: { $0.type == "city" })?.name

selectedPlace.addressComponents 是一个数组GMS地址组件其中有 2 个属性类型和名称。 在你的情况下它会像

    for component in addressComponents! {
    if component.type == "city" {
    print(component.name)
    }
   }

GMSAddressComponent 是一个类,而不是字典或数组,您会收到此错误。

其他组件类型可以参考link https://developers.google.com/places/ios-api/supported_types#table2.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 GMSPlace 地址组件中提取街道、城市等 的相关文章

  • 如何从 iPhone 应用程序中的 URL 读取 .rtf 文件

    我的应用程序需要从 URL 读取 rtf 文件 我将把它读为 NSURL url NSURL URLWithString NSString stringWithFormat rtf URL NSError error NSString co
  • 来自 NSString 的 iOS SecKeyRef

    我需要使用公钥将用户密码加密为 Base64 字符串 公钥是一个 NSString 像这样的东西 MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCgWO7p1AvCaHUeaM6rSczBBAqt mKObHx
  • Google 登录服务器验证码无 iOS?

    我们让 Google 登录您的应用程序 我们在请求登录时提供服务器客户端 ID 我们得到的 user serverAuthCode 为 nil 我们的要求如下 func googleLogin var configureError NSEr
  • 从 Firebase Swift 检索信息的好方法

    我和我的朋友正在 swift 上开发一个 IOS 项目 并集成了 新的 Firebase 我们能够写入 Firebase 数据库 但是我们在检索数据时遇到了问题 我们有一个 tableView 控制器 我们希望从 Firebase 数据库填
  • ios-使用 firebase 发送通知

    我正在尝试创建带有通知的应用程序 通知必须从 php 文件发送到 firebase 然后发送到设备 起初 我尝试使用 firebase 控制台发送 效果完美 但是当我尝试使用 php 发送通知时 我遇到了问题 显示已成功发送 但我没有收到任
  • 准备未签名的 Xcarchive

    太长了 问题 有没有办法准备一个 XArchive 然后他们可以自己分配配置文件并使用适当的分发证书进行签名 长问题 我的客户向我发送了我为他们开发的应用程序的配置文件 他们不想向我发送他们的分发证书 p12 文件 他们给我的指示如下 将配
  • 使用PhotoKit可以获取“最近删除”中的照片吗?

    我已经扫描了 API 到目前为止什么也没发现 我会采取一个PHAssetCollection对于 最近删除 或者获取个人的方法PHAssets 我不推荐 或不推荐 但有一些解决方案outsideAPI 但可能仍然可以通过 AppStore
  • 如何隐藏标签栏并在屏幕上显示完整的表格视图?

    在我的应用程序的实现中 我有一个带有 5 个不同选项卡的选项卡栏控制器 通过以下代码隐藏标签栏后 void hideTabBar for UIView view in self tabController view subviews if
  • UIWebView 中的多选 HTML 文件输入不适用于视频

    我在使用 UIWebView Cordova 创建打包为本机 iOS 应用程序的上传表单时遇到问题 问题是 当在允许多重选择的元素中选择视频时 与只能进行单一选择不同 所选视频不会被 压缩 预处理并因此受到某种程度的限制 当尝试使用 Fil
  • 视图水平和垂直不明确且布局复杂

    我有一个UIViewController在我的故事板上有 2 个水平并排的子视图 我添加了约束来将前缘和后缘固定为常数 20 点 并添加了另一个约束来保持宽度相等 如果我假设以下内容 应该可以计算每个子视图需要的宽度 子视图不重叠 不存在其
  • XCode 12.5 缺少权利 com.apple.developer.linked-appclip-app-identifiers

    将 Xcode 版本更新到 12 5 后 我遇到了 App Clip 问题 在 App Store Connect 上传期间 我收到警告 TMS 90876 Missing entitlement This app contains an
  • 停止重复 UIImage 背景图案图像 - Swift

    我在 UITableView 中使用滑动来删除 在滑动中我需要添加图像 当我添加图像时 它会重复 如何停止重复 func tableView tableView UITableView editActionsForRowAt indexPa
  • 如何在首选项包中使用 PSLinkListCell 中的值?

    我想为我的越狱调整制作一个偏好包 我成功地制作了一个带有可用开关的首选项捆绑包 但我想要一个选择颜色的设置 例子 Blue Color gt Yellow Green 所以如果我点击Color 它会将我带到另一个屏幕 要求我选择 Blue
  • 如何以编程方式设置 iOS 6/7 Delta

    当我离开 iOS6 时 我正在使用 Xcode 4 6 开发 UISplitView 应用程序 我有设计 现在我迁移到新的 Xcode5 现在我有这样的设计 UINavigationBar 完全重叠我的 UISearchBar Leo Na
  • Nativescript 中本机传感器的可访问性

    我决定选择在 Nativescript 跨平台 IOS Android 中实现应用程序 或者相应地使用 java swift 制作 真正的 本机应用程序 放弃明显的 1 代码库与 2 代码库讨论 我不确定 Nativescript 的局限性
  • 通过 HTTP 代理进行 iOS XMPP 聊天

    我有一个 iPhone 应用程序 可与 2 项服务配合使用 通过 http 使用 REST 服务 使用 AFNetworking 通过 TCP 进行 XMPP 聊天 使用 XMPPFrameworkhttps github com robb
  • FileManager 说文件不存在

    我有一个用例需要UIImage保存到文档目录 然后UIImage需要转换为PDF并保存到文档目录 转换为 PDF 的代码 var filePath NSString string self selectedMedia imagePath i
  • 如何在 Swift 中枚举 OptionSetType?

    我在 Swift 中有一个自定义的 OptionSetType 结构 如何枚举一个实例的所有值 这是我的选项集类型 struct WeekdaySet OptionSetType let rawValue UInt8 init rawVal
  • 外围 BLE 设备的唯一标识符

    所以我有外围设备BLE设备 我需要一些标识符以便稍后与另一部 iPhone 共享 我连接的示例iPhone A 为外围设备 iPhone A 将外围设备的标识符保存到数据库中 稍后我可以轻松获取iPhone B 并连接到通过该标识符找到的外
  • 尽管遵循以下说明,PWA iOS Splash 仍不显示

    我正在制作 PWA 并尝试显示闪屏 我正在关注这个教程 https developer apple com library archive documentation AppleApplications Reference SafariWe

随机推荐