在iOS中集成Google地图标记

我有一个基于地图的应用程序,使用谷歌地图的iOS SDK。 我需要在核心数据库中存储几千个项目,并在地图上显示标记。 出于性能和可用性的原因,我需要在用户缩小时将这些标记聚类,但是我需要确保放置代表性标记,以便用户知道放大的位置以查看更多细节。

我的核心数据模型中的每个条目都存储了纬度/经度双精度值。 所以我认为把这些项目聚类在一起就是保留一个单独的实体,在这个实体中,我将地理坐标的较不重要的部分去掉,并在其中存储一个计数。

因此,无论何时在数据库中插入经纬度为{44.9382719,-130.20293849}的项目,经纬度为{44.9,-130.2}的另一个“群集”对象的计数属性都会递增。 这个想法是,在低的缩放(即缩小),我只会查询集群对象,并把它们放在地图上,而不是实际的项目。

我的问题是:根据NSManagedObject引用 ,你不应该在awakeFromInsert获取东西,所以如何确保插入一种托pipe对象更新另一种托pipe对象的值?

我一直在谷歌地图search图书馆的群集标记为iOS的三天,最后我结束了这个https://github.com/googlemaps/google-maps-ios-utils ,这很好,很容易使用和理解。

看看routeMe,这是默认的

/** Whether the annotation should be clustered when map view clustering is enabled. Defaults to /** Whether the annotation should be clustered when map view clustering is enabled. Defaults to YES . */ @property (nonatomic, assign) BOOL clusteringEnabled; . */ @property (nonatomic, assign) BOOL clusteringEnabled;