BOb*_*der 0 iphone overlay objective-c mkmapview mkoverlay
嗨,我有以下问题!我在我的MKMapView中添加了很多叠加层!例如,我添加了150个叠加层,但由于某些原因,并非所有叠加层都显示出来!我知道mapView:viewForOverlay:被召唤150次.我发现如果我将其添加到:[NSThread sleepForTimeInterval:1]创建所有叠加层的方法中,所有叠加层都会显示出来.那么叠加是否会被快速添加?或者可能是什么问题?
所有叠加都是在这样的后台线程中创建的!
MKPolyline* routeLine;
....
....
dispatch_async(dispatch_get_main_queue(), ^{
[self.myMKMapView addOverlay:routeLine];
});
Run Code Online (Sandbox Code Playgroud)
这就是 mapView:viewForOverlay:
- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id <MKOverlay>)overlay
{
MKOverlayView* overlayView = nil;
MKPolylineView * rLV = [[[MKPolylineView alloc] initWithPolyline:overlay]autorelease];
rLV.fillColor = [UIColor blueColor];
rLV.strokeColor = [UIColor blueColor];
rLV.lineWidth = 1;
rLV.alpha = 0.5;
overlayView = rLV;
return overlayView;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1467 次 |
| 最近记录: |