在 MapKit / CoreLocation 中计算两个纬度/经度之间的距离
Posted
技术标签:
【中文标题】在 MapKit / CoreLocation 中计算两个纬度/经度之间的距离【英文标题】:Calculate distance between two latitudes/longitudes in MapKit / CoreLocation 【发布时间】:2009-12-07 00:13:28 【问题描述】:我希望在 CoreLocation 中使用 getDistanceFrom
方法来确定两点之间的距离,但在尝试使用 CoreLocation 时出现错误...
我正在使用 3.1.2。我试过这个,但返回错误:
CLLocation *userLoc = [[CLLocation alloc] initWithCoordinate:appDelegate.mapView2.userLocation.coordinate];
CLLocation *poiLoc = [[CLLocation alloc] initWithLatitude: [aPOI.latitude doubleValue] longitude: [aPOI.longitude doubleValue]];
double dist = [userLoc getDistanceFrom:poiLoc] / 1000;
NSLog(@"%d",dist);
给出的错误:
".objc_class_name_CLLocation", referenced from:
literal-pointer@__OBJC@__cls_refs@CLLocation in POIDetailViewController.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
我错过了什么吗?我已经导入了CoreLocation
...
此方法在 3.1.2 中是否已弃用?
谢谢
【问题讨论】:
好吧,我修复了错误,但现在我收到了一个巨大的数字(1862709713)返回dist
?为什么会这样?
【参考方案1】:
您需要在项目中添加一个 CoreLocation 框架。
【讨论】:
【参考方案2】:通过从 Xcode 项目包中的 project.pbxproject 文件中删除框架搜索目录解决
【讨论】:
以上是关于在 MapKit / CoreLocation 中计算两个纬度/经度之间的距离的主要内容,如果未能解决你的问题,请参考以下文章
iOS 利用CoreLocation和MapKit开发搜索附近的商场功能
是否可以使用 CoreLocation/MapKit 查找纬度/经度附近的地址?