Масштаб событий, которые работают в Android MapView - PullRequest
7 голосов
/ 12 мая 2010

Мне нужно перерисовать оверлей после увеличения пользователем.
Каков наилучший способ сделать это?
Я перепробовал все, что мог придумать (сохранение состояния getZoomLevel (), переопределение onUserInteraction ()), на самом деле ничего не работает.
Проблема в том, что draw () вызывается, когда пользователь нажимает кнопку zoom, поэтому информация, которую получает мой метод draw (о состоянии карты), отличается от состояния после того, как представление карты завершает масштабирование.
Кроме того, draw () не вызывается в конце масштабирования, поэтому, только если я перемещаю карту, наложение фактически рисуется правильно.

Ответы [ 2 ]

2 голосов
/ 12 декабря 2010

Так как никто не ответил на это за 7 месяцев, я напишу, что я в итоге сделал.

Я использовал обработчик для обновления карты вручную через 500 мс, все работало нормально.

Handler handler;
handler.postDelayed(refreshRoute, 500);
0 голосов
/ 02 февраля 2011

Вы пытались звонить mapview.postInvalidate() после увеличения?

...