0

AM 试图将 CLLocationCoordinate2D[] 添加到 NSMutableArray 并将其作为参数发送。但是 (__bridge id) 正在使应用程序崩溃。结构到 id 的转换是问题所在。任何人都可以请让我知道如何使用它。

CLLocationCoordinate2D坐标[1000];

坐标[索引] --- 所有在循环中添加到它的坐标。

NSMutableArray *coorArray = [NSMutableArray array];
[coorArray addObject:(__bridge id)(coordinates)]; crashes here
4

2 回答 2

1

您不应该看+[NSValue valueWithBytes:objCType:](__bridge) 演员表。桥是为了其他事情。

例如: [NSValue value:&coordinate withObjCType:@encode(CLLocationCoordinate2D)];

我想也可以对整个数组进行编码

于 2013-03-01T10:53:18.937 回答
1

采用:

NSMutableArray *coorArray = [NSMutableArray array];
[coorArray addObject:[NSValue valueWithPointer:coordinates]];

然后当你想检索结构数组时:

CLLocationCoordinate2D coordinates[] = [coorArray objectAtIndex:0].pointerValue;

交流阵列不是对象,因此不能桥接。

于 2013-03-01T10:53:59.740 回答