/ / Swift, posizionati vicino alla posizione dell'utente: iOS, Swift, Xcode, Google Maps

Swift, si posiziona vicino alla posizione dell'utente: ios, swift, xcode, google-maps

"Sono un principiante nello sviluppo di un" Sto aggiungendo una google map in una vista della mia applicazione, seguendo un tutorial ho usato questo codice

func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
let location: CLLocation = locations.last!
print("Location: (location)")

let camera = GMSCameraPosition.camera(withLatitude: location.coordinate.latitude,
longitude: location.coordinate.longitude,
zoom: zoomlevel)


let marker = GMSMarker()
marker.title = "My Position"

marker.map = mapView
if mapView.isHidden {
mapView.isHidden = false
mapView.camera = camera
} else {
mapView.animate(to: camera)
}


}


func locationManager(_ manager: CLLocationManager, didChangeAuthorization status: CLAuthorizationStatus) {
switch status {
case .restricted:
print("Location access was restricted.")
case .denied:
print("User denied access to location.")

mapView.isHidden = false
case .notDetermined:
print("Location status not determined.")
case .authorizedAlways: fallthrough
case .authorizedWhenInUse:
print("Location status is OK.")
}
}


func locationManager(_ manager: CLLocationManager, didFailWithError error: Error) {
locationManager.stopUpdatingLocation()
print("Error: (error)")
}

per trovare la posizione dell'utente, ora vorreivedere sulla mappa i luoghi (luoghi di Google) che si trovano a una distanza X dalla posizione dell'utente, come posso fare? ho cercato nel documento di Google Places ma non ho trovato una risposta valida

risposte:

1 per risposta № 1

Aggiungi un altro marker su Tocca su mapView e rendilo trascinabile e usa CLLocationDistance per misurare la distanza tra 2 posizioni.

let distanceInMeters = self.locationManager.location?.distance(from: newMarkerLocation!)