![](/img/trans.png)
[英]How to get State specific result with Google autocomplete place api ios?
[英]How to get country specific result with Google autocomplete place api ios sdk?
我正在使用下面的方法來獲取 GMSPlacesClient 類的輸入字符串的自動完成結果:
- (void)autocompleteQuery:(NSString *)query
bounds:(GMSCoordinateBounds * GMS_NULLABLE_PTR)bounds
filter:(GMSAutocompleteFilter * GMS_NULLABLE_PTR)filter
callback:(GMSAutocompletePredictionsCallback)callback
我嘗試通過多種方式實現邊界,但沒有一種方法有效,我想知道是否有任何標准方法可以使用 GMSCoordinateBounds 獲得特定於國家/地區的結果?
這個對我有用
let placesClient = GMSPlacesClient()
let filter = GMSAutocompleteFilter()
filter.type = .Establishment
filter.country = "SG"
placesClient.autocompleteQuery(searchString, bounds: nil, filter: filter) { (results, error:NSError?) -> Void in
self.resultsArray.removeAll()
if let _ = results {
for result in results!{
if let res: GMSAutocompletePrediction = result {
// your code
}
}
}
}
在您的Google地方API網址中,只需添加即可
&components=country:sg
here sg = country code for singapore. Append country code as per your requirement.
該國家/地區必須作為兩個字符,ISO 3166-1 Alpha-2兼容國家/地區代碼傳遞。 你可以參考不同國家的國家代碼
Google自動填充功能適用於iOS的Places API不支持按國家/地區進行過濾。 GMSCoordinateBounds
使用與兩個角定義的矩形區域對應的northEast和southWest邊界。
使用Google Places API網絡服務並使用components=country:
過濾可能更容易components=country:
您可以在country:
地區后指定所需的國家/ country:
完整的國家/地區代碼列表可在此處找到:
https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
使用它:
let filter = GMSAutocompleteFilter()
filter.country = "YOURCountryCode"
在Swift 5及更高版本中
您可以通過配置GMSAutocompleteFilter
自定義您的搜索,並從其屬性country
指定country
例子 :
let filter = GMSAutocompleteFilter()
filter.country = "MA"
autocompleteController.autocompleteFilter = filter
該國家/地區應為 ISO 3166-1 Alpha-2 國家/地區代碼(不區分大小寫)。
你可以從這里找到這些代碼:國家 ISO 代碼
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.