正如您在图像中看到的那样,mapView顶部有多个多边形。每个多边形都覆盖在其他多边形的顶部。这会导致不透明度问题,并通过引用色彩映射误导用户解释颜色。
在放置任何多边形之前,首先我要删除/清除新的多边形区域,然后添加多边形。
我希望我的问题清楚!如果没有,请告诉我。提前感谢。
我还在下面添加了部分代码作为参考!多边形数据来自服务器的JSON格式,我从这些数据中获取坐标,并将它们添加为每个时间戳的多边形。
for(bb = 0; bb < [polygonArray count]; bb++){
coords = malloc(sizeof(CLLocationCoordinate2D) * [[polygonArray objectAtIndex:bb] count]);
for (int a = 0;a < [[polygonArray objectAtIndex:bb] count]; a++){
coords[a].latitude = [[[[polygonArray objectAtIndex:bb]objectAtIndex:a]objectAtIndex:0]doubleValue];
coords[a].longitude = [[[[polygonArray objectAtIndex:bb]objectAtIndex:a]objectAtIndex:1]doubleValue];
}
polygon = [[MKPolygon alloc]init];
polygon = [MKPolygon polygonWithCoordinates:coords count:[[polygonArray objectAtIndex:bb]count]];
[previousPolygons addObject:polygon];
[mapView addOverlay:polygon];
}
}
答案 0 :(得分:0)
嗯。我有点不清楚你想做什么。如果您只想删除多边形,则必须找到一些如何找到要删除的多边形并运行
[mapView removeOverlay:polygon]
如果要删除所有多边形,则可以运行
[mapView removeOverlays:mapView.overlays]