Android Google maps неприятности на маркеры удалить

Я внедряю Android Google Maps v2. И добавление на карту нескольких маркеров, после удаления маркеров, расположенных за пределами границ экрана некоторые маркеры иконки потеряли изображение
Значки маркеров после удаления других маркеров
При использовании maker.setVisible (false) , что все хорошо

Код, где вызывается маркер.удалять()

List<Point> points = ((SearchPointsMapResponse) response).getPoints();
Iterator<Point> iterator;
for (iterator = mPoints.values().iterator(); iterator.hasNext();) {
Point point = iterator.next();
if (!points.contains(point)) {
Marker marker = mMarkers.remove(point.getId());
marker.remove();
iterator.remove();
}
}

1 ответ

  1. Что я думаю, что проблема в этой части :

     Marker marker = mMarkers.remove(point.getId());
     marker.remove();
     iterator.remove();
    

    mMarkers.удалить (int);

    будет удалить объект в этом конкретном положении! не объект с этим идентификатором !
    приведем пример:

    у нас есть точка с id 3. Вызов mMarkers.remove(3);удалит 4-й добавленный маркер! не маркер с id 3 !