2017-02-16 6 views
0

Ich verwende google places iOS SDK, um die in der Nähe befindlichen Orte zu suchen, wenn gesucht wird. Ich hatte den Standort von Denver auf meinem Gerät über Xcode simuliert. Aber bei der Suche nach "Starbucks", erwartete ich zu sehen "Starbucks, 3110 E 1st Ave, Denver, CO 80206" in der Liste. Aber ich nicht. Ich kann es nur sehen, wenn ich mit "Starbucks, 3110 E" suche. Unten ist der Code mitGoogle platziert iOS SDK Wenn Orte nicht in der Nähe gesucht werden

CLLocation *userLocation = [[CLLocation alloc] initWithLatitude:latitude longitude:longitude]; 

    GMSAutocompleteFilter *filter = [[GMSAutocompleteFilter alloc] init]; 
    filter.type = kGMSPlacesAutocompleteTypeFilterNoFilter; 
    GMSAutocompleteViewController *acController = [[GMSAutocompleteViewController alloc] init]; 
    acController.delegate = self; 
    acController.autocompleteFilter.type = kGMSPlacesAutocompleteTypeFilterNoFilter; 
    CLLocationCoordinate2D newLocation = [self locationWithBearing:userLocation.course distance:30000.0 fromLocation:userLocation.coordinate]; 

    acController.autocompleteBounds = [[GMSCoordinateBounds alloc]initWithCoordinate:userLocation.coordinate coordinate:newLocation]; 

newlocation wird mit 30 Meilen Bereich von userlocation berechnet.

Bitte korrigieren Sie mich, wenn Sie etwas falsch machen.

+0

Warum diese Frage mit 'Android' gekennzeichnet ist! –

+0

Hallo Atef, ich habe das gleiche Problem in Android auch .. so gedacht, das auch zu markieren ... muss ich es entfernen? – user3584797

+0

Sie können keine Frage und einen Code sowohl für Android als auch für IOS posten, da sie unterschiedlich sind und STO-Leser auch anders sind, bitte posten Sie eine andere Frage. Irgendwelche @Selvin hat dir die Frage bearbeitet und den Android Tag entfernt –

Antwort

0

Sie müssen Grenzen für Standorte in der Nähe angeben.

func openPlacePicker(){  

let acController = GMSAutocompleteViewController() 
    let neBoundsCorner = CLLocationCoordinate2D(latitude: (locationManager.location?.coordinate.latitude)!, 
               longitude: (locationManager.location?.coordinate.longitude)!) 

    let swBoundsCorner = CLLocationCoordinate2D(latitude: (locationManager.location?.coordinate.latitude.abs)! + 1, 
               longitude: (locationManager.location?.coordinate.longitude.abs)! + 1) 

    let bounds = GMSCoordinateBounds(coordinate: neBoundsCorner, 
            coordinate: swBoundsCorner) 

    acController.autocompleteBounds = bounds 

    acController.delegate = self 
    present(acController, animated: true, completion: nil) 



} 
Verwandte Themen