GooglePlacesSearchController
Google Places autocompleting address search controller
Install / Use
npx skills add shmidt/GooglePlacesSearchControllerInstalls into whichever agent you are using.
README
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
<table width="100%"> <tr> <td align="left"><img src="Screenshots/view.png"/></td> <td align="right"><img src="Screenshots/search.png"/></td> </td> </table>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.
Related Skills
node-connect
385.5kDiagnose OpenClaw Android, iOS, or macOS node pairing, QR/setup code, route, auth, and connection failures.
blender-python-addon
40.5kBlender Python add-on rules for operators, panels, properties, registration, testing, and API-safe scripting
flutter-development-guidelines-cursorrules-prompt-file
40.5kCursor rules for Flutter development with MVVM architecture, Riverpod state management, Material widgets, and Dart style guidelines.
commit-push-pr
140.6kCommit, push, and open a PR
