如下图所示的代码显示:
我试图在MapView
上创建一个简单的多边形来标记特定区域。
我已经设置了坐标,也计算了多边形视图。
我还想念别的什么?
为什么mapview没有显示任何内容?
答案 0 :(得分:0)
我正在对ObjC进行快速扫描,但看起来你正在处理MapKit委托函数,根据你显示的方法和错误信息寻找多边形渲染器。
MapKit传递它想要渲染的叠加层,确定该叠加层的类型(在这种情况下为多边形),然后创建并配置一个渲染器实例,它可以用来显示多边形并返回该对象。 MapKit使用相同的调用来获取多边形线和图块叠加图像的渲染器,因此如果您有任何其他叠加层,则需要检查类型。
在swift中,渲染器的定义如下:
func mapView(_ mapView: MKMapView, rendererFor overlay: MKOverlay) -> MKOverlayRenderer
{
switch overlay
{
case is MKPolygon:
let polygonRenderer = MKPolygonRenderer(overlay: overlay)
polygonRenderer.strokeColor = UIColor.black
polygonRenderer.lineWidth = 5
polygonRenderer.fillColor = UIColor.white
return polygonRenderer
default:
[whatever for poly lines, map overlays, etc.]
}
}
您将使用渲染器提供mapView以显示多边形。鉴于我们正在访问相同的API,我认为您需要做类似的事情。
错误的语言,但我希望它有所帮助...