You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GMSAutocompleteViewController中仅筛选显示健身房(Gym)?

解决Google Places Autocomplete筛选Gym类型地点的问题

我看到你尝试用GMSAutocompleteFilter来筛选Gym类型的地点,但没能成功实现功能。咱们来一步步排查并解决这个问题:

问题分析

你当前的代码只将GMSPlaceField设置为types,这可能导致Autocomplete控制器无法获取足够的字段来完成筛选逻辑;另外,单一字段的设置也可能影响返回结果的完整性,进而让筛选效果不明显。

修正后的代码实现

// 同时指定需要获取的核心地点字段(名称、地址、类型是常用必备项)
let placeFields: GMSPlaceField = [.name, .formattedAddress, .types]
autocompleteController.placeFields = placeFields

// 创建并配置筛选器
let filter = GMSAutocompleteFilter()
filter.type = kGMSPlaceTypeGym
autocompleteController.autocompleteFilter = filter

额外注意事项

  • 确认你的Google Places API密钥已经启用了Places Autocomplete API服务,未启用的话筛选功能会直接失效。
  • 如果仍无效果,可以在回调中打印返回地点的types数组,检查是否包含gym类型,以此验证API是否正确返回了对应数据。
  • 部分地区的地点数据覆盖度有限,建议切换到有较多Gym数据的地区(比如美国大城市)测试功能是否正常。

内容的提问来源于stack exchange,提问作者Codobux social

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.13 07:52:45