Подтвердить что ты не робот

Как получить центр карты MKMapView?

У меня есть MKMapView, который позволяет пользователю прокручивать карту вокруг. Позже я хочу получить широту и долготу точки в центре карты, но не могу найти простой способ сделать это. На данный момент я пытаюсь что-то вроде:

CLLocationCoordinate2D centre = [locationMap convertPoint:locationMap.center toCoordinateFromView:locationMap];
txtLatitude.text = [NSString stringWithFormat:@"%f",centre.latitude];
txtLongitude.text = [NSString stringWithFormat:@"%f",centre.longitude];

Но он не работает - и широта, и долгота оба выходят как ноль. Я был бы благодарен за любые идеи, которые могли бы быть у кого-либо!

==============

- Обновление 1 -

О. Если я добавлю:

NSLog(@"%@", locationMap);

как показано ниже, в журнале отображается "(null)". У меня есть следующее в моем заголовке (между прочим):

#import <UIKit/UIKit.h>
#import <MapKit/MapKit.h>
#import <CoreLocation/CoreLocation.h>

IBOutlet MKMapView *locationMap;

@property (nonatomic, retain) IBOutlet MKMapView *locationMap;

и в файле моих методов:

@synthesize locationMap;

Это компиляция без каких-либо предупреждений или ошибок в настоящее время. Испугавшись, пропустил ли я что-то очевидное?

4b9b3361

Ответ 1

Как насчет свойства centerCoordinate?

то есть.

CLLocationCoordinate2D centre = [locationMap centerCoordinate];

Если свойство centerCoordindate - все 0, убедитесь, что у вас есть допустимый указатель locationMap - objective-c позволит вам отправлять сообщения в нуль без ошибок!

Попробуйте NSLog(@"%@", locationMap); - если это выводит нуль, вы, вероятно, забыли подключить mapLocation к MKMapView в Interface Builder;)