Удаление наложений из mapView - PullRequest
0 голосов
/ 04 мая 2011

Я создаю наложения в mapView, проблема в том, что когда я снова возвращаюсь к просмотру карты, я вижу наложения, которые я делал ранее. Я попытался удалить оверлеи в методе ondestroy, который не помогает. Попробовал все, поверьте мне. Сферы кода ... Также в onCreate () я использовал mapView.invalidate (); что тоже не помогает. Я просто хочу избавиться от оверлеев, когда работа закончена. Любое решение?

   @Override
protected void onDestroy(){ 
    super.onDestroy();
    stopWorker=true;
    mapView.invalidate();
    mapView.postInvalidate();
    for (int i=0; i<mapView.getOverlays().size(); i++ ) {
        mapView.getOverlays().remove(i);
    }

    Toast.makeText(this,"map destroy ...", Toast.LENGTH_LONG).show();
    mapView.getOverlays().clear();
}

Ответы [ 2 ]

6 голосов
/ 04 мая 2011

Похоже, ваша деятельность не заканчивается.Только если действие завершено, он перейдет в состояние onDestroy.Попробуйте написать тот же код в onPause () или onResume ().

2 голосов
/ 04 мая 2011

Оверлеи автоматически удаляются, когда ваша деятельность заканчивается. У вас есть другая ошибка в вашем коде. Например, вы можете проверить это, нажав HOME, который не вызывает onDestroy().

...