1

我想在 MKMapView 上绘制一个基于图块的叠加层,但是没有明显的方法可以做到这一点。

这似乎很棘手,因为您可以使用 MKMapView 缩放到任何级别(与 Google 地图不同)。

有没有人试图这样做?

4

3 回答 3

2

万一这个问题仍在获得意见,读者应该查看来自 WWDC2010 的 HazardMap 和 TileMap 演示代码。

于 2011-02-14T04:10:47.350 回答
0

我正在开发一个游戏,我需要在地图上叠加对象并让它们随着地图滚动和缩放。

使用注释视图我已经能够解决第一个问题并部分解决第二个问题。注释会随着地图自动移动。为了缩放它们,我使用mapView:regionDidChangeAnimated:委托方法在缩放事件后调整注释的大小。问题是注释在缩放手势完成之前不会重新缩放。

除了向 Apple 提交错误,要求他们为地图叠加层提供 API 之外,我还可以想到两种方法:

  1. 在 MKMapView 的顶部放置一个(大部分不可见的)视图,该视图拦截缩放和滚动事件,处理它们,并将它们传递给地图视图。

  2. 使用来自 Open Street Map 或CloudMade的图块自定义开源RouteMe 库(前者速度慢,后者要花钱)。但它是完全开源的,因此您应该能够对您的内容进行覆盖。您还可以运行自己的图块服务器,在服务器上进行图块覆盖。

于 2010-01-30T00:50:07.667 回答
0

我后来发现的东西:

http://www.gisnotes.com/wordpress/2009/10/iphone-devnote-14-drawing-a-point-line-polygon-on-top-of-mkmapview/

不是一个基于图块的解决方案,但仍然很有趣。

于 2010-02-06T01:11:32.927 回答