2013-05-03 89 views
6

我的应用程序当前正在使用谷歌地图api v2 for iOS。我想添加自定义平铺叠加层,我认识到不支持api。iOS谷歌地图Api平铺叠加

我对这个问题采取的第一种方法是尝试扩展GMSOverlay类,但后来我发现drawLayer方法从未被调用。

接下来,我尝试让我的自定义类扩展UIView,然后将我的类作为子视图添加到地图视图中。我能够使用GMSMapViewDelegate方法didChangeCameraPosition将相机更新报告回我的自定义类,以便可以重新绘制切片。这主要与几个例外有关,首先,只加载初始瓦片集,并且如果从初始X,Y,Z平移或缩放,地图瓦片不会通过drawInRect方法更新。第二个问题是我的自定义UIView在点击后覆盖了所有标记及其相应的标注。

我的问题是,有没有人有任何经验添加自定义瓷砖或继承GMSOverlay类以添加,例如,在谷歌地图顶部的自定义天气瓷砖?

回答

0

你试过看这个例子吗?

https://github.com/mtigas/iOS-MapLayerDemo

它是基于MKMapKit,而不是谷歌地图SDK。它支持缩放的瓷砖,非常容易扩展,并可能指向正确的方向。

如果你需要生成的地图图块,可以使用MapTiler

http://www.maptiler.org/

MapTiler的Windows版本提供了区块生成的更细粒度的控制。 。

+0

感谢您的回答。实际上,谷歌刚刚发布了他们已经实施了TiledOverlay的API的1.3版本。因此,我猜这个问题已经解决了。 – 2013-05-17 01:00:59