GPS получить долготу и высоту отдельно - PullRequest
0 голосов
/ 13 декабря 2011

Я использую этот код для получения данных GPS

- (void)locationUpdate:(CLLocation *)location {
    locLabel.text = [location description];
}

результат выглядит следующим образом

<+ 38.76856432, +11.99454301> +/- 100.00m (скорость ......)

когда я пытаюсь это сделать, у меня появляется ошибка,

- (void)locationUpdate:(CLLocation *)location {
    locLabel.text = [location altitude];}

ошибка

Присвоение "NSString *" из несовместимоготип CLLocationDistance (он же double)

я тоже хочу получить долготу

Ответы [ 2 ]

4 голосов
/ 13 декабря 2011

Вы должны быть в состоянии получить широту и долготу отдельно от location.coordinate.latitude и location.coordinate.longitude.

Возможно, полученная вами высота неверна. Проверьте значение в location.verticalAccuracy. Согласно документации, «Отрицательное значение указывает, что значение высоты неверно». То же самое касается location.horizontalAccuracy, чтобы убедиться, что значения широты и долготы в location.coordinate действительны.

1 голос
/ 13 декабря 2011

Свойство altitude имеет тип CLLocationDistance, то есть typedef для double.Вы пытаетесь присвоить номер свойству, которое ожидает строку.Вам необходимо создать строковое представление числа.Используйте что-то вроде этого:

locLabel.text = [NSString stringWithFormat:@"%f", [location altitude]];
...