我希望用户能够在地图中放置一些(未知数字)MKpointAnnotations 后创建多边形。我已经放置了一个手势识别器,一旦用户点击一个按钮就会激活,因此放置了注释。但是如何使用这些作为MKPolygon 的角落?在保存多边形角的代码下方。在我对其进行了一些修改之后。现在应用程序崩溃并且崩溃报告者说索引超出范围。角是通过 GestureRecognizer 创建的 MKPointAnnotation-s。
-(IBAction)addCorner:(id)sender
{
NSMutableArray *addCorners = [[NSMutableArray alloc] init];
[addCorners addObject:pointAnnotation];
ptsArray = addCorners;
}
-(IBAction)addPolygonOverlay:(id)sender
{
int cornersNumber = sizeof(ptsArray);
MKMapPoint points[cornersNumber];
for (int i=0; i<cornersNumber; i++) {
points[i] = MKMapPointForCoordinate([[ptsArray objectAtIndex:i] coordinate]);
}
MKPolygon *polygon = [MKPolygon polygonWithPoints:points count:cornersNumber];
[mapview addOverlay:polygon];
}