将谷歌自动完成限制为仅限城市和国家iOS Swift



我已经在我的应用程序中实现了谷歌自动完成功能。我想确保那些自动完成的地方,行政区域和国家。而不是道路或任何其他地方。我们能做到吗?

typedef NS_ENUM(NSInteger, GMSPlacesAutocompleteTypeFilter) {
  /**
   * All results.
   */
  kGMSPlacesAutocompleteTypeFilterNoFilter,
  /**
   * Geeocoding results, as opposed to business results.
   */
 kGMSPlacesAutocompleteTypeFilterGeocode,
  /**
   * Geocoding results with a precise address.
   */
 kGMSPlacesAutocompleteTypeFilterAddress,
  /**
   * Business results.
   */
 kGMSPlacesAutocompleteTypeFilterEstablishment,
  /**
   * Results that match the following types:
   * "locality",
   * "sublocality"
   * "postal_code",
   * "country",
   * "administrative_area_level_1",
   * "administrative_area_level_2"
   */
  kGMSPlacesAutocompleteTypeFilterRegion,
  /**
   * Results that match the following types:
   * "locality",
   * "administrative_area_level_3"
   */
  kGMSPlacesAutocompleteTypeFilterCity,
};

这可以通过编辑这个头文件来实现,对吗?但我试着去掉了一些。但仍然可以正常工作。

您可以限制的搜索结果

let filter = GMSAutocompleteFilter()
filter.type = .City
filter.country = "uk"

使用以上代码将结果限制在英国,并且只获得城市结果。

搜索一段时间后。我找到了解决办法。

 let filter = GMSAutocompleteFilter() 
filter.type = GMSPlacesAutocompleteTypeFilter.City

这对我有效

let filter = GMSAutocompleteFilter()
filter.country = "uk|country:fr|country:us"

最新更新