Имам следния код:
self.mapView = [[MKMapView alloc] init];
self.mapView.frame = CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height);
self.mapView.showsUserLocation = YES;
self.mapView.delegate = self;
[self.mapView setAutoresizingMask:(UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight)];
[self.view addSubview:self.mapView];
Синята точка с текущото ми местоположение се показва, но когато се опитам да я запиша в конзолата, не ми дава нищо.
NSLog(@"%f", self.mapView.userLocation.location.coordinate.latitude);
Това трябва да е много просто, така че къде се объркам?
Отговори:
1 за отговор № 1местоположението е станало по асинхронен начин, така че да го запишете веднага няма да ви донесе нищо.
трябва да изчакате обаждането на делегат "mapView: didupdateUserLocation"
- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation
само тогава стойността е валидна