как извлечь магнитное значение из CLHeading - PullRequest
0 голосов
/ 18 января 2010

Я пытаюсь с помощью CLHeading получить значение компаса,

- (void)locationManager:(CLLocationManager *)manager didUpdateHeading:(CLHeading *)newHeading {
 if (curHeading != nil)
  [curHeading release];

 curHeading = newHeading;
 NSLog(@"%@",curHeading);
 [curHeading retain];
}

приведенный выше результат как -

MagneticHeading 89,00 trueHeading +103,27 точность 5,00 x +1,375 лет +41,875 z +37,438 @ 2010-01-18 10:18:37 + 0800

но мне нужно только значение MagneticHeading, поэтому

Я изменяю код как:

а)

newHeading.magnHeading -> получил нулевой результат

б)

newHeading.trueHeading -> Программа получила сигнал: «EXC_BAD_ACCESS».

может кто-нибудь помочь, я просто пытаюсь другим возможным способом получить значение компаса.

1 Ответ

3 голосов
/ 18 января 2010

MagneticHeading и TrueHeading имеют тип CLLocationDirection, который на самом деле является двойным. Если вы хотите использовать NSLog () double, вы должны использовать "% f" или "% .9f", а не "% @", который предназначен для объектов.

...