5

我正在通过在 2 点之间绘制方向来制作导航应用程序。我成功存档了功能。

但是方向线绘制在道路标签的顶部,并且该标签无法读取,如下图所示。

在此处输入图像描述

这是我绘制叠加层的代码

- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id<MKOverlay>)overlay
{
    MKPolylineView *overlayView = [[MKPolylineView alloc] initWithPolyline:overlay];
    overlayView.lineWidth = 10.0f;
    //overlayView.strokeColor = [[UIColor redColor] colorWithAlphaComponent:0.5f];
    overlayView.strokeColor = [UIColor redColor];
    return overlayView;
}

我可以用透明线克服这个问题,但这不是有效的方法。

最好的方法是在 MKMapView 的地图层和标签层之间画线,但我不知道如何存档。

所以请提供任何帮助。谢谢。

4

1 回答 1

9

假设您正在为 iOS 地图(而不是您标记问题的谷歌地图)编写此内容并使用 iOS 7,那么当您将叠加层添加到地图视图时,您可以选择定义它所在的级别addOverlay:level:。级别在MKMapView 类参考中定义

[theMapView addOverlay:theOverlay level:MKOverlayLevelAboveRoads];
于 2013-11-26T20:59:21.063 回答