如何在 Google 地图 ios sdk 中过滤自动完成国家?
How to filter autocomplete country in Google maps ios sdk?
目前,它在每个国家查询,但我希望它只在新加坡查询
我找到了一个 Whosebug 解决方案 How to get country specific result with Google autocomplete place api ios sdk?,但不知道我应该把代码放在哪里。
这是代码,我使用自动完成的全屏解决方案。
import UIKit
import GoogleMaps
class OnlyLocationViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func clickMe(sender: UIButton) {
let autocompletecontroller = GMSAutocompleteViewController()
autocompletecontroller.delegate = self
self.presentViewController(autocompletecontroller, animated: true, completion: nil)
}
}
extension OnlyLocationViewController: GMSAutocompleteViewControllerDelegate{
func viewController(viewController: GMSAutocompleteViewController, didAutocompleteWithPlace place: GMSPlace) {
print("Place name: ", place.name)
print("Place address: ", place.formattedAddress)
print("Place attributions: ", place.attributions)
self.dismissViewControllerAnimated(true, completion: nil)
}
func viewController(viewController: GMSAutocompleteViewController, didFailAutocompleteWithError error: NSError) {
// To handle error
print(error)
}
func wasCancelled(viewController: GMSAutocompleteViewController) {
self.dismissViewControllerAnimated(true, completion: nil)
}
func didRequestAutocompletePredictions(viewController: GMSAutocompleteViewController) {
UIApplication.sharedApplication().networkActivityIndicatorVisible = true
}
func didUpdateAutocompletePredictions(viewController: GMSAutocompleteViewController) {
UIApplication.sharedApplication().networkActivityIndicatorVisible = false
}
}
过滤代码应该放在哪里?
试试这个
@IBAction func clickMe(sender: UIButton) {
let autocompletecontroller = GMSAutocompleteViewController()
autocompletecontroller.delegate = self
let filter = GMSAutocompleteFilter()
filter.type = .Establishment //suitable filter type
filter.country = "SG" //appropriate country code
autocompletecontroller.autocompleteFilter = filter
self.presentViewController(autocompletecontroller, animated: true, completion: nil)
}
目前,它在每个国家查询,但我希望它只在新加坡查询
我找到了一个 Whosebug 解决方案 How to get country specific result with Google autocomplete place api ios sdk?,但不知道我应该把代码放在哪里。
这是代码,我使用自动完成的全屏解决方案。
import UIKit
import GoogleMaps
class OnlyLocationViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func clickMe(sender: UIButton) {
let autocompletecontroller = GMSAutocompleteViewController()
autocompletecontroller.delegate = self
self.presentViewController(autocompletecontroller, animated: true, completion: nil)
}
}
extension OnlyLocationViewController: GMSAutocompleteViewControllerDelegate{
func viewController(viewController: GMSAutocompleteViewController, didAutocompleteWithPlace place: GMSPlace) {
print("Place name: ", place.name)
print("Place address: ", place.formattedAddress)
print("Place attributions: ", place.attributions)
self.dismissViewControllerAnimated(true, completion: nil)
}
func viewController(viewController: GMSAutocompleteViewController, didFailAutocompleteWithError error: NSError) {
// To handle error
print(error)
}
func wasCancelled(viewController: GMSAutocompleteViewController) {
self.dismissViewControllerAnimated(true, completion: nil)
}
func didRequestAutocompletePredictions(viewController: GMSAutocompleteViewController) {
UIApplication.sharedApplication().networkActivityIndicatorVisible = true
}
func didUpdateAutocompletePredictions(viewController: GMSAutocompleteViewController) {
UIApplication.sharedApplication().networkActivityIndicatorVisible = false
}
}
过滤代码应该放在哪里?
试试这个
@IBAction func clickMe(sender: UIButton) {
let autocompletecontroller = GMSAutocompleteViewController()
autocompletecontroller.delegate = self
let filter = GMSAutocompleteFilter()
filter.type = .Establishment //suitable filter type
filter.country = "SG" //appropriate country code
autocompletecontroller.autocompleteFilter = filter
self.presentViewController(autocompletecontroller, animated: true, completion: nil)
}