I m met MapKit in mijn toepassing en disaply de locatie van de gebruiker met
[mapview setShowUserLocation:YES];
Ik wil de region.center.latitude en region.center.longitude met de coördinaten van de userLocation ingesteld, hoe dat te doen?
I m met MapKit in mijn toepassing en disaply de locatie van de gebruiker met
[mapview setShowUserLocation:YES];
Ik wil de region.center.latitude en region.center.longitude met de coördinaten van de userLocation ingesteld, hoe dat te doen?
Hier is mijn antwoord, ik probeer iets dergelijks en de werking ervan:
//inside my ViewDidLOad
locManager = [[CLLocationManager alloc] init];
[locManager setDelegate:self];
[locManager setDesiredAccuracy:kCLLocationAccuracyBest];
[locManager startUpdatingLocation];
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
CLLocationCoordinate2D loc = [newLocation coordinate];
[maptView setCenterCoordiante:loc];
}
Veel makkelijker:
-(void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation {
MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(userLocation.location.coordinate, 1500, 1500);
[mapView setRegion:region animated:YES];
}
Om een of andere reden, dit werkte niet voor mij. Het neemt me mee naar de coördinaten (0.0000, 0.0000). Hieronder is mijn code als je de kans om het uit te zoomen. Bedankt voor de hulp!
[mapView setMapType:MKMapTypeStandard];
[mapView setZoomEnabled:YES];
[mapView setScrollEnabled:YES];
mapView.showsUserLocation=TRUE;
MKCoordinateRegion region = { {0.0, 0.0 }, { 0.0, 0.0 } };
CLLocationCoordinate2D myCoord = {mapView.userLocation.location.coordinate.latitude,mapView.userLocation.location.coordinate.longitude};
[mapView setCenterCoordinate:myCoord animated:YES];
region.span.longitudeDelta = 0.01f;
region.span.latitudeDelta = 0.01f;
[mapView setRegion:region animated:YES];
[mapView setDelegate:self];
Ik denk dat dit antwoord op uw vraag: Returning Mapkit Userlocation Coördinaten
(maakt gebruik van de mapView.userLocation.location.coordinate.latitudeen mapView.userLocation.location.coordinate.longitude properties)
en vervolgens te injecteren die coördinaten in de
-(void)setCenterCoordinate:(CLLocationCoordinate2D)coordinate animated:(BOOL)animated
van uw MKMapView instantie.
Met behulp van afgevaardigde:
-(void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation { MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(userLocation.location.coordinate, 500, 500); [mapView setRegion:region animated:YES]; }
Zonder afgevaardigde:
[self.mapView setuserTrackingMode:MKUserTrackingModeFollow];