相关疑难解决方法(0)

MKMapView - 未调用rendererForOverlay

我最近开始学习objectiveC并开始在iOS6中开发应用程序.

现在,我正在尝试将其转换为iOS7并面临MKMap的问题.

在iOS6中,我使用的是viewForOverlay.

在iOS7中,我将其更改为renderForOverlay.但是,我的应用程序不是调用mapView:rendererForOverlay.以下是我的代码.感谢您的帮助.

- (void) drawPolyline:(NSArray *)locations
{
    [mapView setDelegate:self];
    ...
    ...

    self.polyline = [MKPolyline polylineWithCoordinates:locationCoordinate2DArray count:numberOfLocations];
    free(locationCoordinate2DArray);
    [mapView addOverlay:self.polyline];
    [mapView setNeedsDisplay];
}

- (MKOverlayRenderer*)mapView:(MKMapView*)mapView rendererForOverlay:(id <MKOverlay>)overlay
{
    MKPolylineRenderer* lineView = [[MKPolylineRenderer alloc] initWithPolyline:self.polyline];
    lineView.strokeColor = [UIColor blueColor];
    lineView.lineWidth = 7;
    return lineView;
}
Run Code Online (Sandbox Code Playgroud)

mkmapview ios mkpolyline

14
推荐指数
1
解决办法
1万
查看次数

将MKPolyline Overlay添加到MKMapView会导致应用程序崩溃

我的应用程序在iOS6上运行正常,但是当我向MKMapView添加叠加时由于访问不良而在iOS 7上崩溃.我的代码如下

MKPolyline *polyline = [[MKPolyline alloc] init];
   polyline = [MKPolyline polylineWithCoordinates:coordinates count:numberOfSteps];
    [directionMap addOverlay:polyline];
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

这是崩溃日志(lldb)bt*

 thread #51: tid = 0x1cc5, 0x38755f8c libdispatch.dylib`dispatch_retain$VARIANT$mp + 8, stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
    frame #0: 0x38755f8c libdispatch.dylib`dispatch_retain$VARIANT$mp + 8
    frame #1: 0x3598dbc8 VectorKit`-[VKRasterOverlayTileSource init] + 176
    frame #2: 0x358cfd24 VectorKit`-[VKMapModel _rasterOverlayTileSourceForLevel:] + 308
    frame #3: 0x358d0226 VectorKit`-[VKMapModel addRasterOverlay:] + 46
    frame #4: 0x2f068dfe MapKit`-[MKOverlayContainerView _insertDrawable:forOverlay:atIndex:level:] + 1010
    frame #5: 0x2f06752e MapKit`-[MKOverlayContainerView _configureAndAddDrawable:forOverlay:level:] + 326
    frame #6: 0x2f0676ac MapKit`-[MKOverlayContainerView _considerAddingDrawable:inAddRect:level:] + 372
    frame …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c core-location mkmapview ios

6
推荐指数
1
解决办法
4540
查看次数

标签 统计

ios ×2

mkmapview ×2

core-location ×1

iphone ×1

mkpolyline ×1

objective-c ×1