¿Cómo hago que los marcadores en Android Google Maps API v2 sean clicables para que aparezcan un menú con opciones o simplemente comiencen una nueva actividad? Creo que hice los marcadores en mi aplicación actualmente en un método "newb". No les asigné un nombre o un método para poder vincularlo con el resto del código requerido.
googleMap.addMarker(new MarkerOptions()
.position(latLng)
.title("My Spot")
.snippet("This is my spot!")
.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_AZURE)));
Si RESPONDE esto, incluya un código de muestra de un marcador que se introduce con un nombre único y luego se configura como cliqueable para abrir una nueva actividad.
OnInfoWindowClickListenerCallback
. Hay un método en GoogleMap para eso:googleMap.setOnInfoWindowClickListener(listener);
setTag(position)
mientras agrega marcador al mapa.getTag()
en elsetOnMarkerClickListener
oyentefuente
Evite usar los implementos de actividad OnMarkerClickListener, use un OnMarkerClickListener local
Necesitará un mapa para buscar el modelo de datos original vinculado al marcador
Necesitará un modelo de datos.
Poner algunos datos en el modelo de datos
Al crear un nuevo marcador con un modelo de datos, agregue ambos al mapa del creador
Para el evento de marcador al hacer clic, use un OnMarkerClickListener local:
Para mostrar la ventana de información, recupere el modelo de datos original del mapa de marcadores:
fuente
Otra solución: obtienes el marcador por su título
fuente
Aquí está mi código completo de una actividad de mapa con 4 marcadores en los que se puede hacer clic. Hacer clic en un marcador muestra una ventana de información, y después de hacer clic en la ventana de información, pasará a otra actividad: inglés, alemán, español o italiano. Si desea utilizar OnMarkerClickListener a pesar de OnInfoWindowClickListener, solo tiene que cambiar esta línea:
a esto:
esta línea:
a esto:
y al final del método "onMarkerClick":
Creo que puede ser útil para alguien;)
fuente
fuente
Agregué un
mMap.setOnMarkerClickListener(this);
en elonMapReady(GoogleMap googleMap)
método. Por lo tanto, cada vez que hace clic en un marcador, muestra el nombre del texto en el método de brindis.}
Puede consultar este enlace para marcadores de referencia
fuente
He editado el ejemplo anterior dado ...
fuente