¿Cuál es la forma sugerida de implementar superposiciones en v2 de la API de Google Maps para Android?

En la versión original de la API de Google Maps para Android, era muy fácil implementar una superposición con el código siguiente:

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

… entonces fue posible anular el método draw () de superposiciones y pintar gráficos vectoriales, anular el método onTouchEvent () de superposiciones y dar controles personalizados, etc.

Estoy en una pérdida en cuanto a cómo arquitecturar controles personalizados similares en v2, ya que el caso de uso para superposiciones no se menciona en la referencia de la API (y los marcadores y polígonos no son suficientes). ¿Alguien tiene una forma sugerida de implementar en v2?

Si necesita colocar su propia imagen en la superficie de la tierra, utilice GroundOverlay. El método addGroundOverlay añade dicha imagen. Requiere GroundOverlayOptions que permiten especificar el tamaño y la ubicación de la imagen (en lat long terms) y también BitmapDescriptor que, entre otras opciones, puede utilizar el Bitmap ordinario como fuente de la imagen. Así que puede crear un nuevo mapa de bits, crear lienzo alrededor de este mapa de bits y pintar allí.

Parece un buen acercamiento si usted necesita dibujar algo realmente complejo, algo para que los polígonos y los marcadores no sean suficientes. Además, el código antiguo que se basa en lienzo probablemente se puede volver a utilizar.

No he hecho suficientes pruebas de cuánto tiempo se actualizará el mapa después de actualizar el mapa de bits. En el peor de los casos, tal vez la superposición de tierra debe ser eliminada y la nueva capa de tierra añadida. El propio mapa de bits probablemente todavía puede ser reutilizado.

Poner componentes adicionales en la parte superior puede ser problemático ya que debe soportar el zoom, moverse y el mapa es ahora incluso en 3D.

  • Varias ventanas de información en Android Maps API 2
  • Obtener Lat Lang de un place_id devuelto por autocompletar lugar api
  • Cómo mostrar la animación de ondulación en google map en Android?
  • ¿Cómo puedo mostrar el texto árabe en google map info-window?
  • android + google map api v2 + ubicación actual
  • Contexto nulo Puntero
  • Android obtener y analizar Google Directions
  • google maps api clave no funciona v2
  • Cómo cambiar el idioma de Google Map V2 para la aplicación para Android
  • Cómo cambiar la posición del botón Mi ubicación en Google Maps con Android Studio
  • Cómo enfocar el marcador de Google por marcador de título?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.