【发布时间】:2011-01-20 20:04:46
【问题描述】:
到目前为止,我对 Objective-C 和 Cocoa 框架印象深刻,但我不得不说,我对创建 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-改为输入数组 :( 任何替代方法都将受到欢迎。
【问题讨论】:
标签: iphone objective-c cocoa-touch