在Android Google Maps API的v2中实现覆盖的build议方式是什么?

在Android Google Maps API的原始版本中,使用以下代码轻松实现覆盖:

List<Overlay> mapOverlays = mapView.getOverlays(); AlarmOverlay alarmOverlay = new AlarmOverlay(); mapOverlays.add(alarmOverlay); 

…然后可以重写覆盖draw()方法和绘制vectorgraphics,覆盖onTouchEvent()方法并给定制控件等。

我对如何在v2中构build类似的自定义控件感到不知所措,因为在API参考中没有提到覆盖用例(标记和多边形不够)。 有没有人有build议的方式在V2中实现?

  • 自动显示Google地图标记的工具栏
  • 将对象与标记(谷歌地图v2)
  • 操作栏选项卡中的MapFragment
  • Android谷歌地图API V2空白屏幕
  • android maps v2崩溃时重新打开片段
  • 如何在Android模拟器中下载Google Play服务?
  • Google Maps Android API v2是免费的吗?
  • 在Google地图中清除标记
  • 如果您需要将自己的图像放在地球表面,请使用GroundOverlay。 方法addGroundOverlay添加这样的图像。 它需要GroundOverlayOptions ,允许指定图像的大小和位置(以长期计算),还有BitmapDescriptor ,除了其他选项,可以使用普通的位图作为图像源。 所以你可以创build一个新的位图,围绕这个位图创buildCanvas并在那里绘制。

    如果你需要绘制一些非常复杂的东西,看起来是一个很好的方法,因为多边形和标记是不够的。 此外,在Canvas上绘制的旧代码可能会被重用。

    我没有做足够的testing,我们更新位图后,更新地图的时间会有多久。 在最坏的情况下,可能需要移除地面覆盖图,并添加新的地面覆盖图。 位图本身可能仍然可以被重用。

    在顶部添加额外的组件可能是有问题的,因为它必须支持缩放,四处移动,现在地图甚至是3D。