Сообщение о перемещении объекта круга в Картах Google перед тем, как сделать его видимым

0

проблема

Мой сегмент работает так. Когда я перетаскиваю карту (API Javascript Google Maps), я хочу, чтобы кружок, отображаемый в центре карты, исчез. Когда перетаскивание сделано, я хочу, чтобы круг переместился в новый центр, прежде чем снова стать видимым.

То, что заканчивается, - это то, что круг становится видимым, а затем подпрыгивает к новой позиции, даже если у меня их одна перед другой (заданная позиция, а затем изменение видимости).

попытка

Вот код, который я использовал для этого сегмента:

control.getCircle().setCenter(latLng(latitude, longitude));
control.getCircle().setVisible(true);

Где latLng - это функция-оболочка, которую я создал для получения объекта LatLng, а элемент управления - это объект управления с угловыми Google-картами.

Несмотря на то, что setCenter является первым, круг все еще становится видимым до его перемещения. Есть ли что-нибудь, что я могу сделать по этому поводу? Я попытался обернуть его обещанием, обратными вызовами и т.д., Но ничего похожего не делает.

Благодарю!

Теги:
google-maps
google-maps-api-3

1 ответ

1
Лучший ответ

Попробуйте прослушивать события event center_changed, событие idle или событие dragstart

google.maps.event.addListener(map, 'center_changed', function() {
    control.getCircle().setCenter(latLng(latitude, longitude));
});

google.maps.event.addListener(map, 'dragstart', function() {
    control.getCircle().setVisible(false);
});

google.maps.event.addListener(map, 'idle', function() {
    control.getCircle().setVisible(true);
});
  • 0
    Это работает как шарм, я ценю это!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню