У меня проблема при использовании метода 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];
Я также проверил, что *Экземпляры 1007 * и currentLoc
имеют правильные значения.
Вот пример значения branchLoc
:
lat: -6.17503957 long: 106.79891717
И значение дляcurrentLoc
is:
lat: -6.17603957 long: 106.79891717
Значения branchLoc
извлекаются из файла plist, а currentLoc
получается из класса CLLocation в CLLocationlocationUpdate
метод, определенный в моем файле делегата.
Я попытался использовать% f, и он также возвращает что-то вроде 0,00000.
Есть идеи, что я делаю неправильно?
Спасибо