使用MKOverlayRenderer的奇怪行为

时间:2016-07-14 18:40:14

标签: ios swift mkmapview mkoverlay

我正在开发一个使用MKMapView的项目,需要相当多的叠加层,并且在将叠加层渲染到地图上时遇到了一些奇怪的行为。

委托方法非常标准:

func mapView(mapView: MKMapView, rendererForOverlay overlay: MKOverlay) -> MKOverlayRenderer {
    guard let line = overlay as? MKPolyline else { return MKOverlayRenderer() }
    let renderer = MKPolylineRenderer(polyline: line)
    renderer.lineWidth = 5
    renderer.alpha = 1
    renderer.strokeColor = UIColor.redColor()
    return renderer
}

但是,出于某种原因,当将地图大致围绕180°W到140°W的经度滚动时,这些经度之间的大部分或全部垂直MKPolyline都会消失。并且它们仅在某些缩放级别上消失,并且仅在此区域消失。

以特定方式定位时的外观:

如何缩小一点点:

我总共渲染了107 MKPolyline个,所有这些只包含两个点。

如果有任何人在使用叠加层时遇到类似的行为并找到了解决方案,我非常感谢您对此有所了解。

0 个答案:

没有答案