【问题标题】:How to show single annotation pin for a region when i have multiple coordinates for that region?当我有该区域的多个坐标时,如何显示该区域的单个注释图钉?
【发布时间】:2012-01-29 16:51:58
【问题描述】:

我正在开发地图应用程序,根据要求,我需要为单个区域显示一个图钉,即使它在完全缩小时有多个用户坐标,但当它放大到地图时,我应该显示所有引脚根据其坐标。 我在下面给出了例子来解释我的问题。 我在这个城市有纽约市当我缩小地图时,我的地图视图上有 100 个大头针,它应该只在 100 个大头针的地方显示一个注释大头针,但是当我放大时,它应该再次显示 100 个大头针在地图上。 有没有人知道这件事。我需要建议。请注意,除了我当前的位置之外,我正在从 Web 服务获取所有位置。这不应该影响应用程序,因此应用程序不应该变慢。​​

请提出一些解决方案。

【问题讨论】:

    标签: iphone ios ios4 mkmapview


    【解决方案1】:

    当然有一个控制...
    看看OpenClusterMapView,应该正是你所需要的。

    【讨论】:

      【解决方案2】:

      没有用于此的 API。

      您需要自己管理引脚。当用户放大地图时,您需要决定在什么时候移除聚合图钉并添加单个图钉。相反,当用户缩小时,您将需要删除单个图钉并替换为聚合图钉。

      为聚合的 pin 使用自定义 pin 以表明它代表多个 pin 可能是个好主意。

      我认为此链接可能会帮助您了解当前的缩放级别:

      Zoom and Region

      类似问题的链接:

      Pin Overlap

      【讨论】:

        【解决方案3】:

        Apple WWDC 2011 视频,“使用 MapKit 可视化地理信息”,https://developer.apple.com/videos/wwdc/2011/ 展示了如何对地图注释进行聚类 - 这正是您所需要的。

        【讨论】:

        • 我浏览了苹果提供的 pdf,但我无法得到确切的解决方案。如果我想根据缩放级别放置图钉,您知道应该使用哪个类或代码吗?
        • 我发现 PDF 有点神秘。该视频虽然是一个分步指南。正如 bbarnhart 所说,没有具有 MKAnnotation 集群功能的 API(或类)。 Apple 向您展示了设计模式,您可以从视频中显示的 Xcode 项目中粘贴代码 sn-ps。
        • 该项目的源代码似乎不可用
        • App-Frameworks - 视频 - #12 Session 111 deimos.apple.com/WebObjects/Core.woa/BrowsePrivately/…
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-11-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-12-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多