【问题标题】:How to create get direction button in mapView?如何在mapView中创建获取方向按钮?
【发布时间】:2013-05-13 15:02:06
【问题描述】:

我正在开发我的应用程序,它内部有 mapView 和用户位置。然后,我需要从用户位置到地图上特定位置的方向,我该怎么做。我正在四处寻找,似乎苹果不允许在苹果地图上这样做。 请给我一些建议,非常感谢。

【问题讨论】:

  • 使用 MapView 无法获取路线。您创建一个 URL 来打开 Maps.app 并在那里路由路线。 developer.apple.com/library/ios/#featuredarticles/…
  • 这是我的情况,我建立了一个出租车应用程序,所以我需要在客户开始使用该服务之前为他们估算价格,我可以使用 MKMapItem 切换到地图应用程序但现在我不能用它来估算价格。
  • 那你就不能使用苹果地图了。您必须使用 Google 的 Routing api 来获取路线的所有部分。从那里你可以得到距离和估计路线时间。
  • @KucKu,请参阅下面的答案。 MapQuest 或 Google Directions Web API 都可以直接访问路线的距离。

标签: ios mkmapview


【解决方案1】:

正如 John 所评论的,您无法通过 UIMapView 获取路线,因为 Apple 没有提供您可以使用的 API。如果您确实需要一个用于指示的 API 并且不想自己编写,请查看以下 API:

使用列出的来源之一,您可以向服务器发出 HTTP 请求,该请求将返回包含方向和 ETA 的结果(可能在 JSON 中)。

例如,以下 MapQuest API 调用将返回一个名为 distanceJSON 项目,其中包含兰开斯特和约克之间推荐路线将采用的格式化距离(以英里为单位)。请记住传递您的 API 密钥。

http://www.mapquestapi.com/directions/v1/route?key=YOUR_KEY_HERE&from=Lancaster,PA&to=York,PA&callback=renderNarrative

如需进一步说明,请查看MapQuest documentation

【讨论】:

  • 感谢您的评论,非常感谢。
  • 没问题,欢迎来到 StackOverflow。如果此答案准确回答了您的问题,请按旁边的复选标记
猜你喜欢
  • 2016-07-15
  • 1970-01-01
  • 1970-01-01
  • 2016-02-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-05
  • 2015-07-13
相关资源
最近更新 更多