Add overlays
myPolygon=[MKPolygon polygonWithCoordinates:points count:numberOfPoints];
[self.mapView addOverlay:myPolygon];
remove overlay
[self.mapView removeOverlay:myPolygon];
谢谢
当你调用 removeOverlays: 时,地图视图会释放 MKOverlay 和 MKOverlayView 对象。
您在 myPolygon 中拥有自己对这些的引用。
if (myPolygon != nil) {
[myPolygon release]; // <-- remove this
myPolygon = nil;
}
if (myPolygon != nil) {
[myPolygon release]; // <-- remove this
myPolygon = nil;
}
或者
for (id<MKOverlay> overlayToRemove in mapView.overlays)
{
if ([myPolygon isKindOfClass:[OverlayClassToRemove class]])
{
[mapView removeOverlay:myPolygon];
}
}