Подтвердить что ты не робот

Android Google Maps: отключить перетаскивание в MapFragment

Можно ли отключить функцию перетаскивания, когда пользователь пытается перетащить карту пальцами, не нарушая увеличение и уменьшение масштаба?

Любой, пожалуйста, предложите идею сделать это! Спасибо за вашу драгоценную помощь!

4b9b3361

Ответ 1

Я думаю здесь, что вы ищете:

Внутри Google Maps Android v2

Жесты прокрутки (панорамирования)

Пользователь может прокручивать (панорамировать) по карте, перетаскивая карту с помощью Палец. Вы можете отключить прокрутку, позвонив UiSettings.setScrollGesturesEnabled(булево).

Ответ 2

Вы можете отключить перетаскивание в MapFragment, используя:

googleMap.getUiSettings().setScrollGesturesEnabled(false);

Ответ 3

для отключения перетаскивания в MapFragment этот код:

googleMap.getUiSettings().setScrollGesturesEnabled(false);

работает как @tomrozb. но он не отключает масштабирование карты прикосновением к карте. для этого используйте этот код рядом с кодом выше:

googleMap.getUiSettings().setZoomGesturesEnabled(false);

Ответ 4

Вы можете использовать isScrollGesturesEnabled для карты

Java:

googleMap.getUiSettings().setZoomGesturesEnabled(false);

Котлин

googleMap?.uiSettings?.isScrollGesturesEnabled = false

Ответ 5

Вам не нужно устанавливать это в коде. Вы можете настроить жесты из XML:

<fragment
    xmlns:map="http://schemas.android.com/apk/res-auto"
    android:name="com.google.android.gms.maps.SupportMapFragment"
    android:id="@+id/mapFragment"
    map:uiScrollGestures="false" />

Кроме uiScrollGestures вы можете установить uiZoomGestures, uiTiltGestures и uiRotateGestures.

См. документацию по атрибутам XML.