4

有一个应用程序可以在地图上显示英国的自行车道:

我发现,出于性能原因,我不得不将地图数据的获取拆分为图块。我使用 NSOperationQueue 一次获取一个图块,并将其显示在地图上。这极大地提高了响应能力,但是,它引入了另一个问题,即每次向其添加一组叠加层时地图有时会闪烁。

  • 在我在模拟器上制作的屏幕录像中可以看到这种情况的一个例子:
  • 另一个例子只是使用一些随机线而不是我的循环路径。

我没有在代码中做任何不寻常的事情。

[self.mapView addOverlays:overlays];  // On the main thread

...

if ([overlay isKindOfClass:[RSPathOverlay class]])
{
    RSPathOverlay* pathOverlay = (RSPathOverlay*) overlay;

    MKPolylineView* view = [[MKPolylineView alloc] initWithPolyline:overlay];

    view.strokeColor = [UIColor colorWithRed:0.3 green:0.3 blue:1.0 alpha:1.0];
    view.lineWidth = 4.3;

    return view;
}
  • 是什么导致有时会出现闪烁?
  • 如何减少/消除闪烁?

在开发论坛上问过这个问题,虽然有一些类似问题的回复,但还没有找到好的解决方案。

4

1 回答 1

0

我已经填写了关于该问题的错误报告。它只发生在 IOS 6 而不是 IOS 5。

于 2013-03-18T03:40:01.360 回答