作者leepair (leepair)
看板MacDev
標題[問題] 取得使用者目前位置
時間Wed Feb 13 21:17:30 2013
大家新年好
這幾天放年假就在家動手來作有關ios app的範例
在作有關使用者定位的時候遇到了奇怪的問題,沒有辨法取得座標值
有添加了corelocation frameworks
也有import <CoreLocation/CoreLocation.h>
也有加了CLLocationManagerDelegate
但在viewcontroller.m的viewDidLoad里加了下面這一段但印出來的值都是零:
CLLocationManager *locationManager = [[CLLocationManager alloc] init];
locationManager.delegate=self;
locationManager.desiredAccuracy=kCLLocationAccuracyBest;
[locationManager startUpdatingLocation];
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:
(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{
NSString *userLat = [[NSNumber numberWithDouble:newLocation.coordinate.
latitude] stringValue];
NSString *userLng = [[NSNumber numberWithDouble:newLocation.coordinate.
longitude] stringValue];
NSLog(@"X:%@ Y:%@",userLat,userLng);
}
有把app放到實機上測,實機上有藍點定位到正確的座標,但nslog印出來的值還是零
不知道是什麼問題,是有什麼地方疏忽了嗎?
謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.133.189.6
推 kiii210:直接用double格式輸出看有沒有值 02/13 21:54
→ leepair:我發現它根本沒有去呼叫-(void)locationManager:(....這個 02/13 22:06
→ leepair:這個函式 02/13 22:06
推 kokuyoku:因為ARC的機制把locationManager釋放掉了 02/14 16:45
→ kokuyoku:拉到interface宣告就沒問題了 02/14 16:46