CLLocation distanceFromLocation始终返回0

时间:2011-03-08 04:27:25

标签: cllocation

`嗨我在使用distanceFromLocation方法时遇到问题,它始终返回零。

这是我的代码片段:

NSArray *arrATMItem = [arrATMs objectAtIndex:indexPath.row];
cell.textLabel.text = [arrATMItem objectAtIndex:0];

float lat = [[arrATMItem objectAtIndex:1] floatValue];
float lon = [[arrATMItem objectAtIndex:2] floatValue];
CLLocation *branchLoc = [[CLLocation alloc] initWithLatitude:lat longitude:lon];

CLLocationDistance dist = [currentLocation distanceFromLocation:branchLoc];
NSLog(@"distance = %d",dist);
cell.detailTextLabel.text = [[NSString alloc] initWithFormat:@"%d m", dist];

我还检查了branchLoc和currentLoc实例是否具有正确的值 这是branchLog lat的示例值:-6.17503957 long:106.79891717 currentLoc的值为lat:-6.17603957 long:106.79891717

从plist文件中检索branchLoc值,并从我的委托文件中定义的CLLocation locationUpdate方法的CLLocation类获取currentLoc。

我尝试使用%f,它也返回0.00000之类的东西 我知道我哪里做错了?

由于

1 个答案:

答案 0 :(得分:0)

尝试对lat和lon使用double(或CLLocationDegrees)。