2012-01-19 15 views
2

私はこのマップをいつでもページ上の1つのマーカーのみを許可するようにしようとしていますが、新しいマーカーをクリックすると古いマーカー。以前のGoogleマップマーカーを消去する方法

あなたはこれをどうやって行うのか知っていますか?

google.maps.event.addListener(map, 'click', function(event) { 
       //set up variables 
       var clickLat = event.latLng.lat(); 
       var clickLng = event.latLng.lng(); 

       //show lat and long 
       var loc = document.getElementById("location"); 
       var info = "Latitude: "+clickLat+" "+", longitude: "+clickLng; 
       loc.innerHTML = info; 

       //place marker 
       var marker = new google.maps.Marker({ 
        position: new google.maps.LatLng(clickLat, clickLng), 
        map: map, 
        animation: google.maps.Animation.DROP 
       }); 

      }); 

答えて

2

別のオプションは、単一のマーカー変数を持っていると、誰かが地図上のクリックしたマーカーの位置を更新することです。

0

は、マーカーフィールドを宣言します。

private Marker marker; 

そして、あなたのGoogleMapオブジェクトのsetOnMapClickListener方法のために、次の操作を行います。

@Override 
public void onMapClick(LatLng point) { 
if(marker!=null) marker.remove(); 
markerSelectedPlace = new MarkerOptions().position(point).title(
          "dfsdfsdfs dfsdfsdf"); 
marker = mMap.addMarker(markerSelectedPlace); 
mMap.addMarker(markerSelectedPlace); 
marker.showInfoWindow(); 

} 
関連する問題