如何从开放的街道地图中删除自定义标记并重新加载?

时间:2018-11-10 16:06:47

标签: android openstreetmap marker

这是我的代码。我可以使用此方法加载标记。但是我想在同一位置加载另一个标记,因此我尝试删除较旧的标记并放置新的标记。

private void locationFind(String latitude, String longitude) {

                    Double latDouble = Double.parseDouble(latitudeStr);
                    Double lanDouble = Double.parseDouble(longitudeStr);

                    marker = new Marker(mapView, getContext());
                    marker.setPosition(new GeoPoint(latDouble - .001, lanDouble + .001));
                    marker.setIcon(new BitmapDrawable(createCustomMarker(1)));
                    marker.setAnchor(Marker.ANCHOR_CENTER, Marker.ANCHOR_BOTTOM);
                    mapView.getOverlays().add(marker);
                    marker.setOnMarkerClickListener(new Marker.OnMarkerClickListener() {
                        @Override
                        public boolean onMarkerClick(Marker marker, MapView mapView) {
                            marker.closeInfoWindow();                                                              
                            return false;
                        }
                    });
                    mapView.getOverlays().add(marker);           
    }
}

1 个答案:

答案 0 :(得分:0)

在同一线程中尝试

mapView.getOverlayManager()。clear(); MapView.invalidate();

然后添加..