0

所以我制作了一个 iOS 应用程序,其中我有一个包含数千个注释的地图。我的问题如下:注释是从站点数据库加载的,每当移动地图时我都会查询新的注释,但这会导致多次查询相同的注释,有人知道不这样做的好算法吗?

还有一个后续问题:我只想在某个缩放级别显示注释(我已经在我的地图中实现了缩放级别,就像在 googleMaps API 中一样)。我可以以某种方式使某些注释在某个缩放级别不可见吗?在那种情况下,我该怎么做?

编辑:感谢 Sanjay Chaudhry 的提示。尽管我采用了与视频中建议的方式略有不同的注释分组方法。虽然我仍然不知道如何有效地查询服务器以获取注释,而不会泛滥和查询已经收到的注释。

EDIT2:我仍然没有找到关于如何从网站查询新注释而不查询已经获取的注释的好方法。有谁知道一些将国家划分为 MapRects 的智能算法?

4

2 回答 2

1

如果您是注册开发人员,请观看 WWDC 2011 的以下视频。它有一个演示,正是这样做的:

https://developer.apple.com/videos/wwdc/2011/includes/visualizing-information-geographically-with-mapkit.html#visualizing-information-geographically-with-mapkit

本质上,如果在一个小的地理区域中有许多注解,它们会在地图缩小时被单个注解替换。

于 2012-04-27T16:04:47.920 回答
1

MapKit 在管理注释方面做得很好——通常一次添加尽可能多的东西比在地图移动时不断添加和删除它们要好。注释可以是非常小的对象——你只需要足够的信息来在需要时找到相关数据——因此你可以一次添加数千个而不用太担心使用太多内存。

于 2012-04-28T15:42:24.327 回答