我正在开发一个应用程序,其中我有两个标记,一个用于源,一个用于目标,并且有两个与它们关联的圆圈.OnMarkerDragListener监听器我能够拖动标记但是我如何处理特定的圆圈到沿标记移动。因为两个标记都有OnMarkerDragListener侦听器。我怎么能知道源和目标中的哪个标记已移动,以便删除与其关联的特定圆圈而不删除另一个标记的圆圈。
Marker sourceMarker;
Marker destinationMarker;
Circle srcCircle; //circle associated with sourceMarker
Circle destCircle ; // cricle associated with destinationMarker
. . .
. . .
mMap.setOnMarkerDragListener(new OnMarkerDragListener() {
@Override
public void onMarkerDragStart(Marker marker) {
// TODO Auto-generated method stub
}
@Override
public void onMarkerDragEnd(Marker marker) {
Geocoder gc = new Geocoder(SourceDestinationActivity.this);
List<Address> list = null;
LatLng ll = marker.getPosition();
try {
list = gc.getFromLocation(ll.latitude, ll.longitude, 1);
} catch (IOException e) {
e.printStackTrace();
return;
}
Address add = list.get(0);
marker.setTitle(add.getLocality());
marker.setSnippet(add.getCountryName());
marker.showInfoWindow();
}
@Override
public void onMarkerDrag(Marker marker) {
// TODO Auto-generated method stub
}
});
}
return (mMap != null);
}
. . . . .
. . . . .
private Circle drawCircle(LatLng ll,int range){
Toast.makeText(this, "circle", Toast.LENGTH_LONG).show();
CircleOptions options = new CircleOptions().center(ll).radius(range).fillColor(0x98e698).strokeColor(0x1e7b1e);
return mMap.addCircle(options);
}