2010-07-05 7 views
0

Я просто смотрю на mapKit и решил сделать быструю кнопку для отображения моего текущего местоположения, однако, когда я нажимаю кнопку, моя широта/долгота всегда отображается как [0.000000] [0.000000].userLocation: latitude/longitude return zero?

MapView загружен, так как я могу видеть карту на симуляторе, прежде чем нажимать кнопку. Раньше я делал это, используя coreLocation.framework и используя CLLocationManager и запрашивая местоположение устройства таким образом. Мне просто интересно, почему этот способ работает некорректно, лучше ли мне это сделать через CLLocationManager?

-(IBAction)findMePressed { 
    MKUserLocation *myLocation = [myMapView userLocation]; 
    CLLocationCoordinate2D coord = [[myLocation location] coordinate]; 
    [myMapView setCenterCoordinate:coord animated:YES]; 
    NSLog(@"findMePressed ...[%f][%f]", coord.latitude, coord.longitude); 
} 

EDIT: Добавлено ...

-(IBAction)findMePressed { 
    MKUserLocation *myLocation = [myMapView userLocation]; 
    CLLocationCoordinate2D coord = [[myLocation location] coordinate]; 
    MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(coord, 350, 350); 
    [myMapView setRegion:region animated:YES]; 
} 

-(void)viewDidLoad { 
    [super viewDidLoad]; 
    [myMapView setShowsUserLocation:YES]; 
} 

Гэри.

ответ

1

Либо userLocation не виден на карте (см userLocationVisible свойства) или есть некоторые настройки свойства myMapView проблема, и это ноль (т.е. не подключен в интерфейсе строителе)

+0

Привет Дин, userLocationVisible есть [0], поэтому я думаю, что это проблема. myMapView подключен в IB, поэтому он правильно указывает на мой iVar. – fuzzygoat

+0

То, как моя карта показывала Купертино, находилась как раз слева от дисплея. Настройка showUserLocation и создание региона сделали то, что я ожидал, высоко оценил. – fuzzygoat

1
[...], как Я вижу карту на тренажере [...]

Проверьте его на устройстве. По умолчанию на симуляторе координаты, которые вы возвращаете, - это штаб-квартира Apple. Ср doc.

Смотрите этот другой SO вопрос для устранения ошибок и полезных утилит: Testing CoreLocation on iPhone Simulator

+0

Привет, Guillaume, очень ценится. – fuzzygoat

Смежные вопросы