Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/108.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Google Places API、GMSauto仅完成城市、国家和地区的搜索_Ios_Swift_Google Places Api_Gmsautocomplete - Fatal编程技术网

Ios Google Places API、GMSauto仅完成城市、国家和地区的搜索

Ios Google Places API、GMSauto仅完成城市、国家和地区的搜索,ios,swift,google-places-api,gmsautocomplete,Ios,Swift,Google Places Api,Gmsautocomplete,我已经设置了Google GMSAutocomplete,如下所示: private func setupAutocompleteWithTextFieldController() { let kTextFieldTop: CGFloat = searchField.frame.origin.y let kTextFieldHeight: CGFloat = 44.0 let kContentRectTop = kTextFieldTop + kTextFieldHeig

我已经设置了Google GMSAutocomplete,如下所示:

private func setupAutocompleteWithTextFieldController() {
    let kTextFieldTop: CGFloat = searchField.frame.origin.y
    let kTextFieldHeight: CGFloat = 44.0
    let kContentRectTop = kTextFieldTop + kTextFieldHeight

    contentRect = CGRectMake(0, kContentRectTop, self.view.bounds.size.width, self.view.bounds.size.height - kTextFieldHeight)

    searchField.autocorrectionType = .No
    searchField.returnKeyType = .Done
    searchField.clearButtonMode = .WhileEditing
    searchField.addTarget(self, action: "searchFieldTextFieldEditingChanged:", forControlEvents: UIControlEvents.EditingChanged)
    searchField.delegate = self

    tableDataSource = GMSAutocompleteTableDataSource()
    tableDataSource.delegate = self

    resultsController = UITableViewController(style: UITableViewStyle.Plain)
    resultsController.tableView.delegate = tableDataSource
    resultsController.tableView.dataSource = tableDataSource
}
还实现了委托,
UITextFieldDelegate
GMSAutocompleteTableDataSourceDelegate
,它工作得很好。不过,我想把搜索范围限制在地区、行政区域和国家。e、 我不想让它搜索“地方”。让

我知道有过滤对象;但是,我如何将其应用到我的使用中?有什么想法吗

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


您可以设置
GMSAutocompleteTableDataSource的字段

您的答案是以编程方式获取位置预测。我正在使用PlaceAPI小部件(与链接位于同一页面的顶部),并希望使用小部件对其进行过滤。有什么想法吗?是的!非常感谢。我在尝试“过滤器”属性,但运气不好。不看文档就到此为止。
func placeAutocomplete() { //Call function from your search editing method
 let filter = GMSAutocompleteFilter()
 filter.type = GMSPlacesAutocompleteTypeFilter.City
  //"YOUR_SEARCH_DATA" Ex. Sydney Oper
 //Uou will get data for  city sydney
 placesClient?.autocompleteQuery("YOUR_SEARCH_DATA", bounds: nil, filter: filter, callback: { (results, error: NSError?) -> Void in
  if let error = error {
    println("Autocomplete error \(error)")
 }
  for result in results! {
  if let result = result as? GMSAutocompletePrediction {
    println("Result \(result.attributedFullText) with placeID \(result.placeID)")
  }
  }
 })
}