创建CLLocationCoordinates数组

我正在尝试获取我存储在parse.com中的纬度和经度双值数组。 我希望能够将这些转换回CLLocationCoordinates,然后我可以使用它在自定义表视图中创建MKPloylines。 但是我不太确定如何存储CLLocationCoordinates数组。 这是我的代码:

_latitudeArray = [object objectForKey:@"latitude"]; [_parseLatitudeArray addObject:_latitudeArray]; _longitudeArray = [object objectForKey:@"longitude"]; [_parseLongitudeArray addObject:_longitudeArray]; for (int i=0; i < [_parseLatitudeArray count]; i++) { _latitude = [self.parseLatitudeArray objectAtIndex:i]; _longitude = [self.parseLongitudeArray objectAtIndex:i]; CLLocationCoordinate2D coordinates [[_latitude count]]; for (int i = 0; i < [_latitude count]; i++) { CLLocationCoordinate2D coordinate; double latitude = [[_latitude objectAtIndex:i] doubleValue]; double longitude = [[_longitude objectAtIndex:i] doubleValue]; coordinate.latitude = latitude; coordinate.longitude = longitude; coordinates[i] = coordinate; } [_coordinatesArray addObject:coordinates]; } NSLog(@"coordinates array = %@", _coordinatesArray); 

起初我想我可以使用[_coordinatesArray addObject:coordinates]; 但后来才意识到这是行不通的!

我可能会遗漏一些非常基本的东西,但任何帮助都会受到赞赏。 谢谢

编辑:属性定义:

 @property NSMutableArray *latitudeArray; @property NSMutableArray *parseLatitudeArray; @property NSMutableArray *longitudeArray; @property NSMutableArray *parseLongitudeArray; @property NSMutableArray *coordinatesArray; @property NSArray *latitude; @property NSArray *longitude; @property CLLocationCoordinate2D *coordinates; 

不是创建结构的C数组,而是将每个结构包装到一个对象中并将其添加到NSMutableArray中。 所以在创建坐标后,只需:

 [coordinatesArray addObject: [NSValue valueWithMKCoordinate:coordinate]]; 

并获得价值:

 CLLocationCoordinate2D coordinate; [coordinatesArray[i] getValue:&coordinate]; 

因此,假设self.latitude和self.longitude是NSStrings的NSArrays:

 //only property is now @property (nonatomic, strong) NSArray * locations -(void) loadCoordinatesFromParse { NSDictionary * parseData; //load parseData from Parse here NSMutableArray * coordinates = [NSMutableArray array]; NSArray * latitudes = [parseData objectForKey:@"latitude"]; NSArray *longitudes = [parseData objectForKey:@"longitude"]; for (int i = 0; i < [latitudes count]; i++) { double latitude = [latitudes[i] doubleValue]; double longitude = [longitudes[i] doubleValue]; CLLocationCoordinate2D coordinate = CLLocationCoordinate2DMake(latitude, longitude); [coordinates addObject: [NSValue valueWithMKCoordinate:coordinate]]; } NSLog(@"coordinates array = %@", coordinates); self.locations = [NSArray arrayWithArray: coordinates]; }