4

我正在实施一个 iphone 应用程序。我有一个地图和对象数组,其中包含要在地图上绘制的坐标。并在这些点之间绘制一条折线。所以我想知道如何删除这条折线。不是显示/隐藏,而是删除。

这是我如何绘制它的代码

int pointCount = [routeLatitudes 计数] / 2; //routeLatitudes 是包含坐标纬度和经度的数组。

    MKMapPoint* pointArr = malloc(sizeof(MKMapPoint) * pointCount);

    int pointArrIndex = 0;  
    for (int idx = 0; idx < [routeLatitudes count]; idx=idx+2)
    {
        CLLocationCoordinate2D workingCoordinate;       
        workingCoordinate.latitude=[[routeLatitudes objectAtIndex:idx] doubleValue];
        workingCoordinate.longitude=[[routeLatitudes objectAtIndex:idx+1] doubleValue];  
        MKMapPoint point = MKMapPointForCoordinate(workingCoordinate);
        pointArr[pointArrIndex] = point;
        pointArrIndex++;
    }   

    // create the polyline based on the array of points. 
    routeLine = [MKPolyline polylineWithPoints:pointArr count:pointCount];

    [mapView addOverlay:routeLine];
    free(pointArr);  

为了显示/隐藏折线,我创建了一个参考MKOverlayView* overlayView = nil;

overlayView.hidden=假/真;

现在我需要知道如何删除/删除绘制的折线。

预先感谢。

4

1 回答 1

9

试试这个

 [mapView removeOverlays:mapView.overlays];
于 2012-09-07T06:59:17.730 回答