【问题标题】:MKPolylines-routeLines not showing in my MKMapView, but everything is correct?MKPolylines-routeLines 没有显示在我的 MKMapView 中,但一切都正确吗?
【发布时间】:2014-11-11 01:54:04
【问题描述】:

我是新手,所以可能是我遗漏了一些简单的东西或其他任何东西。

基本上我想从点到点画一条直线,在我的情况下,我有所有点,其中每条线都应该在坐标数组中绘制。然后我使用叠加方法画线。所有这些都在我已经定义和配置的 MKMapView 中(正确)。

下面是我用来填充坐标数组并创建覆盖/折线的代码:

CLLocationCoordinate2D coordinateArray[arrayOfLatitudes.count];
    for (int i = 0; i < arrayOfLatitudes.count; i++) {

    double tempLatitude = [[arrayOfLatitudes objectAtIndex:(i)] doubleValue];
    double tempLongitude = [[arrayOfLongitudes objectAtIndex:(i)] doubleValue];

    coordinateArray[i] = CLLocationCoordinate2DMake(tempLatitude, tempLongitude);


}

self.routeLine = [MKPolyline polylineWithCoordinates:coordinateArray count:arrayOfLatitudes.count];
[self.mapView setVisibleMapRect:[self.routeLine boundingMapRect]]; //If you want the route to be visible
[self.mapView addOverlay:self.routeLine];

这是我的 ViewForOverlay 方法,我假设它配置了我的 routeLine:

(MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id <MKOverlay>)overlay
{
 if ([overlay isKindOfClass:[MKPolyline class]])
 {
    MKPolylineView *mapOverlayView = [[MKPolylineView alloc] initWithPolyline:overlay];
    //add autorelease if not using ARC
    mapOverlayView.strokeColor = [UIColor redColor];
    mapOverlayView.lineWidth = 3;
    return mapOverlayView;
}

return nil;

}

我的 .h 中也有这些声明:

@property (nonatomic, retain) MKPolyline *routeLine; 
@property (nonatomic, retain) MKPolylineView *routeLineView; 

我不知道为什么我在 MapView 中看不到我的 routeLine 绘制,因为我在另一个类中使用了确切的逻辑(事物的顺序)并且线条出现没有问题。

我在这里缺少什么?请帮帮我

提前致谢

【问题讨论】:

    标签: objective-c xcode polyline mkoverlay mkpolyline


    【解决方案1】:

    我忘了说,第一段代码在一个名为“waitForMe”(void)的方法中。我从我的 viewDidLoad 方法调用 waitForMe。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-02-17
      • 1970-01-01
      • 2018-09-24
      • 2021-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多