如何使用mapkit框架的 distanceFromLocation 方法计算两英里之间的距离。
由于
答案 0 :(得分:28)
答案 1 :(得分:25)
尝试以下代码:
double latA = [currentlat floatValue];
double logA = [currentlong floatValue];
double latB = [toLat floatValue];
double logB = [toLong floatValue];
CLLocation *locA = [[CLLocation alloc] initWithLatitude:latA
longitude:logA];
CLLocation *locB = [[CLLocation alloc] initWithLatitude:latB longitude:logB];
CLLocationDistance distance = [locA distanceFromLocation:locB];
NSLog(@"Calculated Miles %@", [NSString stringWithFormat:@"%.1fmi",(distance/1609.344)]);
答案 2 :(得分:3)
该功能在Apple的文档中似乎相当自我解释?它将给出用户位置和给定位置之间的距离,因此您必须创建一个新的CLLocation对象来告诉iPhone您想去哪里。
该函数以米为单位给出结果。要转换为英里,请乘以0.000621371192。更多信息见this thread.