ios - 如何正确强制 MKMapView 以相同的缩放比例重绘 MKOverlayRenderer

标签 ios mkmapview mapkit

MKMapView正在通过tiles绘制MKOverlayRenderer。问题在于,并非覆盖层的所有图 block 都以相同的缩放比例绘制在屏幕上。同时,叠加层后面的 map 也被精确且正确地绘制。渲染器被迫使用

重绘
[renderer setNeedsDisplay];

每次调整叠加层大小时,所有级别的缓存叠加图 block 都必须失效,并且必须绘制正确的图 block 级别。

实际结果是,当我调整叠加层大小时,它的某些部分会缩放2~3~5倍。看起来很丑。

最佳答案

我遇到了与此非常相似的问题,结果是由于返回的 boundingMapRect 不够大而无法覆盖整个覆盖层。 MapKit 仍然会调用我的绘图例程,但有时我的叠加层不会显示,有时它会以错误的缩放比例显示。

解决方案是提供一个足够大的boundingMapRect

关于ios - 如何正确强制 MKMapView 以相同的缩放比例重绘 MKOverlayRenderer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22029390/

相关文章:

iphone - 如何在 iOS 4 中使用谷歌地球?

ios - 可见区域外的目标标注方向

ios - 如何让我的 UIWebView 在加载 PDF 后滚动

ios - MapKit Xcode 编程

ios - 为什么 UICollectionView reloadData 会导致我的应用崩溃?

ios - 如何计算我当前位置与 MapView 中其他 Pin 之间的距离

ios - MKMapView 区域 DidChange 在缩放/缩小时从未被调用

ios - 使用 MKAnnotation 继续下一个 View Controller

ios - 如何找出坐标之间的距离?

ios - UIDatePicker 在刷新之前显示不正确的分钟间隔