到目前为止,我对Objective-C和Cocoa Frameworks印象非常深刻,但我不得不说,我对创建一个CLLocationCoordinate2D数组以传递给polylineWithCoordinates的最佳方法感到困惑:count:我很漂亮确定这就是我需要设置数组的方式。
NSUInteger numPoints = [locationData count];
CLLocationCoordinate2D *arrayPtr = malloc(numPoints * sizeof(CLLocationCoordinate2D));
但我不知道如何访问每个位置,我以为我可以使用arrayPtr [i],但我似乎无法让它正常工作。
for(NSUInteger counter=0; counter<numPoints; counter++) {
arrayPtr[counter] = [[locationData objectAtIndex:counter] coordinate];
}
我现在正在使用它,我在调试器中查看内存错误,但是有另一种方式(可能没有malloc)我尝试使用NSValue在NSArray中编码值,但却发现我需要一个c-而不是类型数组:(任何替代方法都是最受欢迎的。
答案 0 :(得分:1)
那应该是有效的 - 你得到了什么错误?
更好的方法可能是使用CFArray而不是手动管理malloc。