草庐IT

MKOverlayRenderer

全部标签

ios - 使用 MKOverlayRenderer 绘制带孔的圆效果不佳

我想在mapview上绘制带孔的圆(如donut)。我的代码在这里。-(void)drawMapRect:(MKMapRect)mapRectzoomScale:(MKZoomScale)zoomScaleinContext:(CGContextRef)context{WPCircleOverlay*circleOverlay=self.overlay;CGPointcenterPoint=[selfpointForMapPoint:MKMapPointForCoordinate(circleOverlay.coordinate)];CGFloatinnerRadius=MKMapPo

ios - MKOverlayRenderer 比 MKOverlayView 差?

我正在开发一个高度基于map的应用程序,并且我正在使用MBXMapKit框架(基于MapKit构建)以便在我的MapView中显示自定义Mapboxmap图block而不是默认的Applemap。然而,虽然Apple的map是矢量的,但Mapbox的仍然是栅格图像图block,因此它们被MBXMapKit框架显示为叠加层。一切都很好,直到我使用MKOverlay在map上绘制多段线。据我了解,在iOS7之前,您将向MapView委托(delegate)提供一个MKOverlayView,它将呈现在map上,但现在在iOS7中,它已被弃用,取而代之的是MKOverlayRenderer,

ios - 自定义 MKOverlayRenderer drawMapRect 函数不绘制多边形

我构建了一个自定义MKOverlayRenderer以构建多边形、应用混合模式,然后将它们添加到mapView。在我的drawMapRect函数中,我使用CGPoints数组来构建多边形,并创建路径。但是,在运行时,我的mapView上没有任何显示。我最好的猜测是我在drawMapRect函数中创建多边形的顺序。非常感谢任何帮助或指导,谢谢!overridefuncdrawMapRect(mapRect:MKMapRect,zoomScale:MKZoomScale,inContextcontext:CGContext){super.drawMapRect(mapRect,zoomSc

ios - Nil 与返回类型 'MKOverlayRenderer' 不兼容

我收到这个错误"Nilisincompatiblewithreturntype'MKOverlayRenderer'".这是我的代码:funcmapView(mapView:MKMapView,rendererForOverlayoverlay:MKOverlay)->MKOverlayRenderer{ifoverlayisMKCircle{letcircleRenderer=MKCircleRenderer(overlay:overlay)circleRenderer.lineWidth=1.0circleRenderer.strokeColor=UIColor.purpleCol

ios - 在 iOS7 中检测 MKOverlay 上的触摸(MKOverlayRenderer)

我有一个可能绘制了数百个多边形的MKMapView。在iOS7上将MKPolygon和MKPolygonRenderer作为一个使用。我需要的是一种对用户触摸其中一个多边形采取行动的方式。例如,它们代表map上具有一定人口密度的区域。在iOS6上,MKOverlays被绘制为MKOverlayViews,因此触摸检测更加直接。现在使用渲染器,我真的不明白这是如何完成的。我不确定这是否会有所帮助,甚至是否相关,但作为引用,我将发布一些代码:这会使用mapData将所有MKOverlays添加到MKMapView。-(void)drawPolygons{self.polygonsInfo=
12