两个问题:
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
int degrees = newLocation.coordinate.latitude;
double decimal = fabs(newLocation.coordinate.latitude - degrees);
int minutes = decimal * 60;
double seconds = decimal * 3600 - minutes * 60;
NSString *lat = [NSString stringWithFormat:@"%d° %d' %1.4f\"",
degrees, minutes, seconds];
NSLog(@" Current Latitude : %@",lat);
degrees = newLocation.coordinate.longitude;
decimal = fabs(newLocation.coordinate.longitude - degrees);
minutes = decimal * 60;
seconds = decimal * 3600 - minutes * 60;
NSString *longt = [NSString stringWithFormat:@"%d° %d' %1.4f\"",
degrees, minutes, seconds];
NSLog(@" Current Longitude : %@",longt);
}发布于 2013-06-22 08:26:42
1)当您获得所需精度的位置时,只需在方法[manager stopUpdatingLocation];中执行locationManager:didUpdateToLocation:fromLocation:。
2)要返回坐标(包括纬度和经度),可以在实现locationManager:didUpdateToLocation:的类中定义一个属性,比如locationManager:didUpdateToLocation:,并在那里执行self.myCoordinate = newLocation.coordinate;
https://stackoverflow.com/questions/17248632
复制相似问题