Dans mon projet j'utilise LocationSearchTable
/MKLocalSearch
. Lorsqu'un utilisateur clique sur un élément, ma méthode d'annotation add est appelée dans MapViewController
:Annotation.coordinate ne correspond pas coordonnée.latitude et coordonnée.longitude
func dropPinZoomIn(placemark: MKPlacemark) {
// cache the pin
selectedPin = placemark
// create the pin
let annotation = MKPointAnnotation()
annotation.coordinate = placemark.coordinate
annotation.title = placemark.name
if let streetNumber = placemark.subThoroughfare,
let city = placemark.locality,
let state = placemark.administrativeArea {
annotation.subtitle = "\(streetNumber) \(city) \(state)"
}
// add the pin the the mapView
mapView.addAnnotation(annotation)
let span = MKCoordinateSpanMake(0.01, 0.01)
let region = MKCoordinateRegionMake(annotation.coordinate, span)
mapView.setRegion(region, animated: true)
print(placemark.coordinate)
print(placemark.coordinate.latitude)
print(placemark.coordinate.longitude)
A la fin, quand j'imprimer les coordonnées, je reçois une version plus longue alors que lorsque j'imprime séparément la latitude et la longitude, il arrondit le nombre près de la fin. Cela me cause des problèmes plus tard quand j'ai besoin de comparer les coordonnées. Comment puis-je empêcher cet arrondissement? À titre d'exemple, voici mes résultats:
CLLocationCoordinate2D (latitude: 37,331413259110334, longitude: -122,03048408031462) CLLocationCoordinate2D (latitude:.. 37,3314132591103, longitude: -122,030484080315)
Cela a fonctionné! C'est tout ce dont j'avais besoin pour ajouter debugDescription à ma latitude et longitude et tout le reste se mettra en place plus tard. Merci Kosuke :) – zachenn