Ios 强制MKMapView删除MKOverlayRenderer

Ios 强制MKMapView删除MKOverlayRenderer,ios,swift,mkmapview,mapkit,Ios,Swift,Mkmapview,Mapkit,我将自定义mkoverlayrender添加到MKMapView,然后使用 removeOverlays()但是overlay会在那里停留一段时间,mkmapview会更新图形,大多数时候我会将mkmapview区域移到某个位置,然后移回原处。是否有一种方法可以设置为强制立即渲染mkmapview?我遇到了同样的问题。我在网上发现 self.mapView.removeOverlays(self.mapView.overlays) 应该移除它们,但它没有 事实证明,您必须将MKPolyline

我将自定义mkoverlayrender添加到MKMapView,然后使用
removeOverlays()
但是overlay会在那里停留一段时间,mkmapview会更新图形,大多数时候我会将mkmapview区域移到某个位置,然后移回原处。是否有一种方法可以设置为强制立即渲染mkmapview?

我遇到了同样的问题。我在网上发现

self.mapView.removeOverlays(self.mapView.overlays)
应该移除它们,但它没有

事实证明,您必须将MKPolylineRenderer或覆盖创建为ivar

var directionLineRenderer = MKPolylineRenderer()

func remove() {
    if self.mapView.overlays.count != 0 {
        self.mapView.remove(self.directionLineRenderer.overlay)
    }
}