【问题标题】:Switching the renderer from Apple MapKit to Google Maps SDK将渲染器从 Apple MapKit 切换到 Google Maps SDK
【发布时间】:2013-10-20 12:55:58
【问题描述】:

我需要将地图视图从 Apple 的 MapKit (>= iOS6) 切换到 Google Maps API 并实时切换回来。在地图中有很多注释需要聚类。现在我正在考虑最好的方法。我认为集群可以独立完成。主要问题是,如何改变地图本身。

据我了解,Apple Maps 和 Google Maps SDK 是完全不同的系统,必须分开处理。

但是还有ClassicMaps,一个免费的github项目,可以切换地图。他们怎么做到的?这允许吗?

还有其他方法可以解决这个问题吗?

在此先感谢

【问题讨论】:

  • :D 祝你好运...在两者之间切换不是一件容易的事。我们也这样做了,这很痛苦。我将概述下面的过程
  • ClassicMaps 将 GoogleMap 材料覆盖在 MKMapView 上 .. 不同的东西。他们不会改变渲染。
  • 聪明的方法。不要认为这在法律上是合理的,但见鬼 - 我不是律师

标签: ios mkmapview mapkit gmsmapview


【解决方案1】:

我们也想在 MapKit 和 GMS 之间切换。所以我们开始:首先是 MapKit,因为 MKAnnotations / MKAnnotationViews 已经比 Google GMSMarker 对象“允许一级间接”。

然后我们编写了一个自定义的 GoogleMapsMapView——一个 UIView,它有一个 GMSMapView 作为子视图并模仿所有 MKMapView 并调用 MKMapViewDelegate。

在我们确认新的 GoogleMapsMapView 组件可以工作并且看起来像 MKMapView 之后,我们创建了一个新类(再次:D).. 例如CommonMapview - 在 alloc/init 上 - 为您的操作系统返回正确的类.. MKMapView 或 GoogleMapsMapView

你提到的Clusting是在CommonMapView中实现的,完全不知道渲染器

【讨论】:

  • 很好的答案,谢谢! (即使我已经看到 2 个关闭我的问题的请求)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-22
  • 1970-01-01
  • 2020-09-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多