Recuperare UserLocation coordonate cu MapKit

voturi
5

I m folosind MapKit în cererea mea și disaply locația utilizatorului cu


[mapview setShowUserLocation:YES];

Vreau să setați region.center.latitude și region.center.longitude cu coordonata userLocation, cum se face?

Întrebat 01/02/2010 la 11:34
sursa de către utilizator
În alte limbi...                            


5 răspunsuri

voturi
10

Iată răspunsul meu, încerc ceva de genul asta si de lucru sa:


//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]; }
Publicat 10/03/2010 la 11:43
sursa de către utilizator

voturi
6

Mult mai ușor:

-(void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation {
MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(userLocation.location.coordinate, 1500, 1500);
[mapView setRegion:region animated:YES];
}
Publicat 15/08/2012 la 14:52
sursa de către utilizator

voturi
2

Din anumite motive, acest lucru nu a funcționat pentru mine. Mi-a lua la coordonatele (0.0000, 0.0000). Mai jos este codul meu, dacă aveți o șansă de a verifica afară. Multumesc pentru ajutor!

[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];
Publicat 20/12/2010 la 09:47
sursa de către utilizator

voturi
1

Cred că acest lucru răspunde la întrebarea dumneavoastră: Returnarea Mapkit Userlocation Coordonate

(folosește mapView.userLocation.location.coordinate.latitudeAND mapView.userLocation.location.coordinate.longitude properties)

și apoi se injectează acele coordonate în

-(void)setCenterCoordinate:(CLLocationCoordinate2D)coordinate animated:(BOOL)animated

de exemplu dumneavoastră MKMapView.

Publicat 01/02/2010 la 11:41
sursa de către utilizator

voturi
0

Utilizarea delegat:

  1. Adăugați Mapkit delegat: MKMapViewDelegate
  2. Metoda de a atinge: MapView didUpdateUserLocation
    -(void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation {
        MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(userLocation.location.coordinate,
            500, 500);
        [mapView setRegion:region animated:YES];
    }
    

Fără delegat:

[self.mapView setuserTrackingMode:MKUserTrackingModeFollow];
Publicat 23/05/2019 la 04:03
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more