如何在Android上显示自定义地图

时间:2013-11-05 20:55:38

标签: android api google-maps maps openlayers

我正在尝试创建一个显示Park地图的Android应用程序,当用户点击地图上的某个位置时,应用程序会转到另一个屏幕。

问题是目前我的公园地图是.jpg格式。哪种映射API最适合我的应用程序,以及如何将此.jpg映射转换为API接受的格式。

谢谢!

2 个答案:

答案 0 :(得分:2)

使用自定义地图为Google地图添加叠加层很容易,示例代码开箱即用。

要覆盖地图,您需要大致了解公园的GPS坐标。使用jpg的叠加示例代码在此处:https://code.google.com/p/android-maps-extensions/source/browse/google-play-services-samples/src/com/example/mapdemo/GroundOverlayDemoActivity.java?r=fd7175206a82da6d87b773e968d52849b4c107fb

克隆整个项目并将其导入Eclipse:

git clone https://code.google.com/p/android-maps-extensions/

在设备上运行并安装后,您需要在此处获取API密钥: https://code.google.com/apis/console

如果您遇到困难,请在此处填写完整说明: https://developers.google.com/maps/documentation/android/start

还有其他演示可让您的地图更有用,例如:

  • 到达活动/公园的交通信息
  • 3D视角,如果你想要眼睛糖果
  • 用户当前位置与公园相关的GPS
  • 使叠加层不透明或略透明
  • 自定义标记,以便用户可以点按并打开另一个屏幕

答案 1 :(得分:1)

好吧,您可以在android中使用google maps api v2,然后创建一个Overlay地图并实现getTile,在这里您可以找到更多信息:

<强> https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/model/TileProvider

但唯一的办法是,更改属性以便地图要求您发送的图块,以免说明您的地图有4个图块,因此请使用仅允许传送4个图块的缩放级别然后将相应的图块返回到地图。

您还必须将类型映射设置为NONE。