[英]How can I get position from a draggable marker in Google Maps?
这是我目前的方法
private void createNewMarker() {
MarkerOptions AlarmMarker = new MarkerOptions();
AlarmMarker.position(SearchedLocation).alpha(2).draggable(true)
.snippet(MessageDataText).title(MessageDataTitle).zIndex(2.0f);
mMap.addMarker(AlarmMarker);
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(SearchedLocation,10));
mMap.setOnMarkerDragListener(new GoogleMap.OnMarkerDragListener() {
@Override
public void onMarkerDrag(@NonNull Marker marker) {
}
@Override
public void onMarkerDragEnd(@NonNull Marker marker) {
AlarmMarkerLatLng = AlarmMarker.getPosition();
Toast.makeText(getApplicationContext(), AlarmMarkerLatLng.toString(), Toast.LENGTH_SHORT).show();
}
@Override
public void onMarkerDragStart(@NonNull Marker marker) {
}
});
}
这仅返回创建我的标记的 position 而不是更新的标记...
在您的 setOnMarkerDragListener 上,您想使用局部变量“marker”。 不要试图从 scope 之外获取值。
mMap.setOnMarkerDragListener(new GoogleMap.OnMarkerDragListener() {
@Override
public void onMarkerDrag(@NonNull Marker marker) {
}
@Override
public void onMarkerDragEnd(@NonNull Marker marker) {
Toast.makeText(getApplicationContext(), marker.getPostition.toString(), Toast.LENGTH_SHORT).show();
}
@Override
public void onMarkerDragStart(@NonNull Marker marker) {
}
});
该文档有一些非常好的示例: https://developers.google.com/maps/documentation/android-sdk/marker
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.