因为后台的数据返回是,纬度:”lat”,经度:”lng”,并没有直接返回距离,所以没办法只好自己去计算了。
这里封装一个类方法来直接返回距离:
首先建立一个类<我这里是继承于NSObject,当然你也可以不创建类,直接用系统的方法也可以>:
用到的库
#import <Foundation/Foundation.h>
@interface ZDComputeDistance : NSObject
+ (CGFloat )distanceCurrenLatitude:(CGFloat )currentlat longitude:(CGFloat)currentlng withdestinationLatitude:(CGFloat )lat longitude:(CGFloat)lng;
@end
.m
#import "ZDComputeDistance.h"
#import <CoreLocation/CoreLocation.h>
@implementation ZDComputeDistance
+ (CGFloat )distanceCurrenLatitude:(CGFloat )currentlat longitude:(CGFloat)currentlng withdestinationLatitude:(CGFloat )lat longitude:(CGFloat)lng{
CLLocation * currentCoordinate = [[CLLocation alloc] initWithLatitude:currentlat longitude:currentlng];
CLLocation* destinationCoordinate = [[CLLocation alloc] initWithLatitude:lat longitude:lng];
CLLocationDistance meters = [currentCoordinate distanceFromLocation:destinationCoordinate];
return meters;
}
@end
这样子就搞定了。
返回的值 就是单位为米的距离值了。
使用截图