0

我试图添加到一个可变数组中,但无法弄清楚。将不兼容的数据类型加倍到 id 时引发错误。问题是我如何转换距离并将其存储在我的数组中。

for (int i = 0; i < _getAllLocations.count; i++) {

uscInfo *entity = [_getAllLocations objectAtIndex:i];
NSNumber *numlat=[[NSNumber alloc] initWithDouble:[entity.Latitude doubleValue]];
NSNumber *numlon=[[NSNumber alloc] initWithDouble:[entity.Longitude doubleValue]];
NSLog(@"%d",[_getAllLocations count]);
la=[numlat doubleValue];
lo=[numlon doubleValue];
CLLocation *currentLocation =  [[CLLocationalloc]initWithLatitude:lalongitude:lo];////here put your destination point

//NSLog(@"New Location:%@", newLocation);
CLLocationDistance distance = [newLocation distanceFromLocation:currentLocation];
NSLog(@"%@ (%@) %4.0f km from current location",entity.EntityNo, entity.EntityName, distance);
NSLog(@"%@",currentLocation);

我正在尝试将“距离”存储在我的数组“locationDistance”中

感谢您的帮助,我对 iOS 以及一般编程仍然很陌生。

4

1 回答 1

1

(您确实应该包含不起作用的代码 - 在这种情况下是实际addObject:代码。)

但我可以告诉你,问题是你可能试图将一个裸 CLLocationDistance 添加到数组中,因为它不是一个对象,所以它不起作用。它是typedef'd as adouble所以你需要使用例如[NSNumber numberWithDouble:distance].

于 2012-05-15T17:29:24.533 回答