我正在尝试向 iOS MapKit 添加叠加层以显示平面图。但是,我不确定这样做的最佳方法。如果我使用 MKOverlay 添加平面图,是否会延迟加载平面图,或者我是否需要找出正在显示地图的哪一部分并在之后更新叠加层?我还研究了使用 MKTileOverlay,因为它使用延迟加载,但我的印象是它应该用于完全覆盖地图,而不仅仅是添加到现有地图。这个对吗?
问问题
785 次
2 回答
2
是的,你是对的,MKTileOverlay
可以用瓷砖覆盖整个地图,是的,它正在使用延迟加载。
如果MKOverlay
您不愿意替换地图的原生外观和填充,请使用。您也可以实现延迟加载MKOverlay
。
注意: MKTileOverlay
不会删除您已经存在的MKAnnotations
和MKOverlay
.
于 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 回答