我在 View 中使用 Apple map 作为默认 map 。
我需要在我的应用中集成 Google map ,并让用户选择 map 类型: 谷歌地图或苹果 map 。
我有不同的方法,显示半径覆盖、图钉和其他东西。有什么方法可以拥有 1 个 MapView,并且只是更改 map 的类型?谷歌或苹果。
将两者映射到应用程序的最佳实践是什么。
最佳答案
您将无法简单地使用两个不同的 map 并在它们之间切换,因为它们不共享相同的 API,甚至不共享相似的 API。这意味着需要针对每个单独的 map 适本地处理每条信息,因为在每个 map 上处理注释和叠加层的方式不同。我的建议是使用 UIViewControllerContainment,创建一个类,比如 VRMapViewController,放置这个类需要实现的方法以便添加/删除一些数据,然后实现两个子类:VRAppleMapViewController 和 VRGoogleMapViewController。在这个子类中,您将处理每个控件所需的自定义,以便在 map 中显示数据(配置注释和叠加层等)。每个类还将处理来自各自 map View 的委托(delegate)回调。
关于objective-c - 在应用程序中有谷歌和苹果 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18039684/