GooglePlacesSearchController
A simple Google Places API autocompleting address search controller (subclass of UISearchController) for iOS devices.
GooglePlacesSearchController is 100% Swift 4, and is a fork of GooglePlacesAutocomplete.
No attempt has been made to integrate MapKit since displaying Google Places on a non-Google map is against their terms of service.
Screenshots
![]() |
![]() |
Requirements
iOS 8.0+ Xcode 8.0+ / Swift 4.0
Installation
GooglePlacesSearchController is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'GooglePlacesSearchController'Usage
To run the example project, clone the repo, and run pod install from the Example directory first.
To integrate GooglePlacesSearchController in your code the simplest way would be:
let controller = GooglePlacesSearchController(delegate: self,
apiKey: GoogleMapsAPIServerKey,
placeType: .address
// Optional: coordinate: CLLocationCoordinate2D(latitude: 55.751244, longitude: 37.618423),
// Optional: radius: 10,
// Optional: strictBounds: true,
// Optional: searchBarPlaceholder: "Start typing..."
)And then add controller's searchbar controller.searchBar to your view.
To get selected place use viewController(didAutocompleteWith:) delegate method:
extension ViewController: GooglePlacesAutocompleteViewControllerDelegate {
func viewController(didAutocompleteWith place: PlaceDetails) {
print(place.description)
placesSearchController.isActive = false
}
}Author
Dmitry Shmidt with help of other contributors.
License
GooglePlacesSearchController is available under the MIT license. See the LICENSE file for more info.



