Antwort

3

Try this,

aus Ihrer Map-Klasse implementieren Marker klicken Zuhörer,

public class MapView extends FragmentActivity implements OnMarkerClickListener{} 

es wird außer Kraft setzen onMarkerClickEvent wie folgt

@Override 
public boolean onMarkerClick(final Marker marker) {} 
1

Die Antwort ist nein. Sie können die onClick eines bestimmten Markers nicht separat einstellen.

Mithilfe von Map.setOnMarkerClickListener(_) können Sie jedoch einen Listener für alle derartigen Ereignisse festlegen. Sie sollten in der Lage sein, das -Objekt in dem Listener abzurufen, der aufgerufen wird, wenn auf eine Markierung geklickt wird. Sie können eine Identifikation verwenden, um zu sehen, ob dies der bestimmte Marker ist, den Sie wünschen, und entsprechend handeln. Die Identifikation könnte eine der Eigenschaften sein, die für diesen Marker spezifisch sind, title ist die offensichtliche Wahl. Sie können jedoch Marker mit einer beliebigen Eigenschaft filtern.

1

NO, Sie können ein Marker-Klick-Ereignis nicht direkt aus dem Code triggern (aus dem Code).

Sie können einfach mMap.setOnMarkerClickListener(...); verwenden, um Marker Klickereignis zu behandeln.


Aber es gibt eine Alternative, wenn Sie Ihre Karte in WebView verwenden, so können Sie einen Marker Click-Ereignis mit JavaScript auslösen:

//In V2 version: 
GEvent.trigger(markers[i], 'click'); 

//In V3 version: 
google.maps.event.trigger(markers[i], 'click'); 
7

Nein, aber Sie können die onClick simulieren Ereignis. Wenn Sie auf eine Markierung klicken, werden zwei Dinge angezeigt:

  1. Das Infofenster für die entsprechende angeklickte Markierung wird angezeigt.
  2. Die Kamera schwenkt zum Marker.

Die oben kann mit 2 Zeilen Code erreicht werden:

marker.showInfoWindow(); 
map.animateCamera(CameraUpdateFactory.newLatLng(marker.getPosition()), 250, null); 
+10

Sie das Routensymbol vergessen erscheinen. Ihre Lösung für das nicht funktionieren. –

Verwandte Themen