2010-01-18 22 views
-1

我與CLHeading試圖讓羅盤值獲取磁力值,如何從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×1.375 Ÿ 41.875ž37.438 @ 2010-01-18十點18分37秒+0800

,但我只需要在magneticHeading值,所以

我改變的代碼爲:

一個)

newHeading.magneticHeading - >得到的結果無效

B)

newHeading.trueHeading - >接收到的節目信號: 「EXC_BAD_ACCESS」。

任何人都可以幫助,我只是想用其他可能的方式來獲得指南針的價值。

回答

3

magneticHeading和trueHeading都是CLLocationDirection類型,它實際上是雙精度。如果你想NSLog()加倍,你必須使用「%f」或「%.9f」,而不是用於對象的「%@」。

+0

哎呀,謝謝你的回答,真的沒有意識到這一點, – Apache 2010-01-18 03:16:31