2015-10-06 85 views
0

我想單擊地圖上顯示的特定標記以將座標返回給我。我不知道爲什麼它總是返回相同的座標,即使我點擊了另一個相隔很遠的標記。點擊特定的標記,但它不會返回正確的座標

ArrayList<Coordinates> coordinates=(ArrayList<Coordinates>)bundle.getSerializable("key"); 
     for (int i = 0; i < coordinates.size(); i++) { 

      double lati=coordinates.get(i).getLat(); 
      double longLat=coordinates.get(i).getLongt(); 
      marker = map.addMarker(new MarkerOptions(). 
        position(
          new LatLng(lati, longLat))); 
     } 

     map.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() { 

      @Override 
      public boolean onMarkerClick(Marker arg0) { 
       LatLng current_position = marker.getPosition(); 
       Double lat = current_position.latitude; 
       Double longt = current_position.longitude; 
       System.out.println(lat); 
       System.out.println(longt); 
       return true; 
      } 
     }); 

回答

1

替換的代碼塊:

LatLng current_position = marker.getPosition(); 

有了這個:

LatLng current_position = arg0.getPosition(); 

希望幫助!

+0

謝謝!!!!!!!!!! –

+0

正確!!!!!!!! – iDevAmit

0
@Override 
public boolean onMarkerClick(Marker arg0) { 
    LatLng current_position = marker.getPosition(); 
    Double lat = current_position.latitude; 
    Double longt = current_position.longitude; 
    System.out.println(lat); 
    System.out.println(longt); 
    return true; 
} 

這裏你引用;切換到arg0代替:

LatLng currentPos = arg0.getPosition();