【问题标题】:How to draw a MKPolyline on a MapView?如何在 MapView 上绘制 MKPolyline?
【发布时间】:2012-06-10 07:27:11
【问题描述】:

我有一个要在地图上绘制的点数组,它已经解码:

- (void) drawRoute:(NSArray *) path {
    NSInteger numberOfSteps = path.count;

    CLLocationCoordinate2D coordinates[numberOfSteps];
    for (NSInteger index = 0; index < numberOfSteps; index++) {
         CLLocation *location = [path objectAtIndex:index];
         CLLocationCoordinate2D coordinate = location.coordinate;

         coordinates[index] = coordinate;
    }

    MKPolyline *polyLine = [MKPolyline polylineWithCoordinates:coordinates count:numberOfSteps];
    [map addOverlay:polyLine];
}

其中“map”是 MKMapView 的一个实例,路径是表示已解码的点集的数组。

我认为用[map addOverlay:polyLine]; 线它会被绘制。我在某些页面中看到过这种方法:

- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id <MKOverlay>)overlay {
    MKPolylineView *polylineView = [[MKPolylineView alloc] initWithPolyline:overlay];
    polylineView.strokeColor = [UIColor redColor];
    polylineView.lineWidth = 1.0;

    return polylineView;
}

polylineView 是在地图上实际绘制的吗?我还尝试将 MKPolyline(来自上述方法)传递给最后一种方法的“ 覆盖”参数,但会引发异常。

我想我已经很接近了,但我现在不知道该怎么办。

请帮忙!非常感谢您。

【问题讨论】:

  • 请注意,此代码现在在 iOS7 上已过时。

标签: iphone ios mkmapview


【解决方案1】:

完成。

这是一件非常愚蠢的事情,我没有为 MapView 设置委托。只需添加 [map setDelegate:self];成功了。

还是谢谢你!

【讨论】:

    【解决方案2】:

    只需创建带有坐标的 MKPolyline 并将该折线添加到地图视图。

    MKPolyline *polyLine = [MKPolyline polylineWithCoordinates:coordinates count:numberOfSteps];
        [map addOverlay:polyLine];
    

    您将找到有关如何在某些坐标上绘制折线的教程here编辑: url 似乎不再有效。你可以找到这个网址here的存档版本。

    【讨论】:

    【解决方案3】:
    MKPolyline *polyline = [MKPolyline polylineWithCoordinates:coordinates count:self.allPins.count];
    [self.mapView addOverlay:polyline];
    

    检查此http://pinkstone.co.uk/how-to-draw-an-mkpolyline-on-a-map-view/ 并快速检查http://rshankar.com/how-to-add-mapview-annotation-and-draw-polyline-in-swift/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多