wake-up-neo.com

Wie zentriere ich meinen aktuellen Standort in MKMapView?

Ich zeige den current location in MKMapView mit showUserLocation enabled. Ich möchte auch die mapview auf den aktuellen Standort des Benutzers und die vergrößerte Karte des Standorts zentrieren. Bitte helfen Sie mir diesbezüglich, da ich bei ähnlichen Fragen zum Stackoverflow keine Hilfe bekomme.

Mein Code ist unten:

- (void)viewDidLoad {
  [super viewDidLoad];
  [mapView setMapType:MKMapTypeStandard];
  [mapView setZoomEnabled:YES];
  [mapView setScrollEnabled:YES];
  [mapView setCenterCoordinate:mapView.userLocation.location.coordinate animated:YES];
  [mapView setDelegate:self];
}
18
vipul

Um sich auf den Standort des Benutzers zu konzentrieren, können Sie den folgenden Code verwenden:

[mapView setCenterCoordinate:mapView.userLocation.location.coordinate animated:YES];

Um an bestimmten Orten zu zoomen, sollten Sie die Zählweise und Funktionsweise der Regionen (MKCoordinateRegion) studieren, Ihre Werte für die Region zählen und sie mithilfe des Aufrufs anzeigen:

[mapView setRegion:myRegion animated:YES];

Dieses Beispiel WorldCities zeigt Grundlagen der Anzeige von Regionen.

50
Denis
MKCoordinateRegion region;
    MKCoordinateSpan span;
    span.latitudeDelta = 0.2;     // 0.0 is min value u van provide for zooming
    span.longitudeDelta= 0.2;

    CLLocationCoordinate2D location = [self addressLocation];
    region.span=span;
    region.center =location;     // to locate to the center
    if(addAnnotation != nil) {
        [mapView removeAnnotation:addAnnotation];
        [addAnnotation release];
        addAnnotation = nil;
    }
    addAnnotation = [[AddressANnotation alloc] initWithCoordinate:location];
    [mapView addAnnotation:addAnnotation];
    [mapView setRegion:region animated:TRUE];
    [mapView regionThatFits:region];

Dies hat mir geholfen, die Position in der Mitte der Kartenansicht anzuzeigen.

2
iamsult

für MKMapView

self.mapView.showsUserLocation = YES;
self.mapView.userTrackingMode = MKUserTrackingModeFollow;
0
Baryon Lee
-(void) removeZoom:(float)deltaValue
{
    MKCoordinateRegion region;
    region.center.latitude =  self.locationManager.location.coordinate.latitude;
    region.center.longitude = self.locationManager.location.coordinate.longitude;

    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:0.5];
    region.span.latitudeDelta = deltaValue;
    region.span.longitudeDelta = deltaValue;
    region = [mapViewSelf regionThatFits:region];
    [mapViewSelf setRegion:region animated:YES];
    [UIView commitAnimations];

}