iOS MKMapView setCenterCoordinate nicht Ehren die exakte Koordinate

Ich habe den folgenden code, um center auf den aktuellen Standort des Benutzers, wenn die locate-Taste gedrückt wird:

- (void)locate
{
    if (self.curLocation) {
        [self.googleMapView setCenterCoordinate:self.curLocation.coordinate animated:YES];
        NSLog(@"setting center (%f,%f), but got (%f,%f)", self.curLocation.coordinate.latitude, self.curLocation.coordinate.longitude, self.googleMapView.centerCoordinate.latitude, self.googleMapView.centerCoordinate.longitude);
    }
}

Den Ausgang des NSLog ist " - Einstellung center (37.785834,-122.406417), bekam aber (37.785826,-122.406406)"

Was bedeutet, dass setCenterCoordinate zog eine Ungefähre koordinieren, statt angewiesen. Dies ist sehr unpraktisch, weil wenn ich die Umsetzung der zoom-Stufe, Zoom out, an der gleichen Stelle, dann Zoomen zurück (da setRegion änderungen der center-Koordinate wie gut) wird sich bewegen, Weg vom alten Standort. Dies ist kontraintuitiv, und die Android-Plattform-API nicht zeigen dieses Fehlverhalten auf.

Könnte mir jemand erklären, warum setCenterCoordinate nicht auf die exakte Koordinate, und wenn möglich, die Art und Weise, um sicherzustellen, Zoom out und in haben das gleiche Zentrum. Danke.

  • ändern Sie den Rahmen der MKMapView?
  • Ich denke nicht so... ich zog alle anderen mapview-code, und dies ist die einzige Sache-Links.
InformationsquelleAutor Eric Chen | 2012-04-21
Schreibe einen Kommentar