Я хочу, чтобы получить текущее местоположение CGPoint values.I может получить текущие значения местоположения, от того, я стараюсь, чтобы получить его, но его не давая правильные точки началаКоординаты местоположения, дающие неправильные значения CGPoint?
-(void)addCircleToUserLocation{
CLLocationCoordinate2D center = CLLocationCoordinate2DMake(_locationManager.location.coordinate.latitude, _locationManager.location.coordinate.longitude);
MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(center, 50, 50);
CGRect rect = [mapView convertRegion:region toRectToView:mapView];
// CGRect rect;
// CGPoint point=[mapView convertCoordinate:center toPointToView:mapView];
// rect.origin.x=point.x;
// rect.origin.y=point.y;
// rect.size.width=100;
// rect.size.height=100;
NSLog(@"%f,%f",rect.origin.x,rect.origin.y);
}
консоли: х-700.736190, y- 329.035629
Здесь я хочу показать местоположение пользователя, добавив следующую строку
mapView.showsUserLocation = YES;
mapView.userTrackingMode = MKUserTrackingModeFollow;
добавление аннотаций на MAP
#define ARC4RANDOM_MAX 0x10000000000
- (void)createAnnotations:(NSMutableArray *)arrayList
{
PinAnnotation* pinAnnotation;
[mapView removeAnnotations:mapView.annotations];
CLLocationCoordinate2D coordinates;
for (int i=0; i<=[arrayList count]; i++) {
CLLocationCoordinate2D cor;
double latDelta = ((double)arc4random()/ARC4RANDOM_MAX);
double lonDelta = ((double)arc4random()/ARC4RANDOM_MAX);
cor.latitude=[latitude doubleValue]+latDelta;
cor.longitude=[longitude doubleValue]+lonDelta;
pinAnnotation = [[PinAnnotation alloc] init];
pinAnnotation.tag=i;
pinAnnotation.coordinate = cor;
if (i==[arrayList count]-1) {
coordinates=cor;
}
[mapView addAnnotation:pinAnnotation];
;
}
//[self setRoot:&coordinates];
//[self zoomMapViewToFitAnnotations:mapView animated:YES];
}
Я добавляю булавку вокруг текущего местоположения случайным образом. Я хочу получить CGPoint текущих значений местоположения.
Пожалуйста, убедитесь, что ваша карта была полностью загружена. Это означает, что если вы пытаетесь получить точку в Viewdidload(), пожалуйста, используйте ее в ViewwillAppear() –