1

我正在尝试向 iOS MapKit 添加叠加层以显示平面图。但是,我不确定这样做的最佳方法。如果我使用 MKOverlay 添加平面图,是否会延迟加载平面图,或者我是否需要找出正在显示地图的哪一部分并在之后更新叠加层?我还研究了使用 MKTileOverlay,因为它使用延迟加载,但我的印象是它应该用于完全覆盖地图,而不仅仅是添加到现有地图。这个对吗?

4

2 回答 2

2

是的,你是对的,MKTileOverlay可以用瓷砖覆盖整个地图,是的,它正在使用延迟加载。

如果MKOverlay您不愿意替换地图的原生外观和填充,请使用。您也可以实现延迟加载MKOverlay

注意: MKTileOverlay不会删除您已经存在的MKAnnotationsMKOverlay.

于 2014-10-06T07:41:52.140 回答
0

MKOverlay是一个协议,而不是一个类。您希望MKTileOverlay从 iOS 7 开始。根据当前显示的地图部分,事物是延迟加载的。

您可能会发现这可用作有关如何对图块进行编号和组织的参考:

https://www.mapbox.com/foundations/how-web-maps-work/

至于覆盖Apple的地图,默认情况下会发生这种情况,但您也可以调整MKOverlayLevel用于将其放置在Apple的基础地图和标签图层之间,或者canReplaceMapContent = YES如果您想完全禁用Apple的地图,您可以使用。

于 2014-10-06T22:22:55.810 回答