Отключить увеличительное стекло в GoogleMaps, Android - PullRequest
3 голосов
/ 08 апреля 2019

Я разрабатываю приложение для Android и показываю местоположение, используя широту и долготу из GoogleMaps.

Я реализовал карты, следующие этому коду: https://gist.github.com/joshdholtz/4522551

Когда я реализую это, я получаю экран моего телефона, как показано:

phone screen

Я не знаю точно, что это за увеличительное стекло слева от моей карты, и я хочу удалить его.

Я отключил большую часть UIsetting с карты.

map = googleMap;
    map.getUiSettings().setMyLocationButtonEnabled(false);
    map.getUiSettings().setMapToolbarEnabled(false);
    map.getUiSettings().setZoomControlsEnabled(false);
    map.getUiSettings().setAllGesturesEnabled(false);
    map.getUiSettings().setCompassEnabled(false);
    map.getUiSettings().setIndoorLevelPickerEnabled(false);
    map.getUiSettings().setZoomControlsEnabled(false);

И когда я нажимаю на увеличительное стекло, я получаю исключение:

 Process: com.itcom202.weroom, PID: 29587
java.lang.NullPointerException: Place Fields must be set.
    at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:889)
    at com.google.android.libraries.places.internal.dt.onClick(Unknown Source:4)
    at android.view.View.performClick(View.java:6256)
    at android.view.View$PerformClick.run(View.java:24701)
    at android.os.Handler.handleCallback(Handler.java:789)
    at android.os.Handler.dispatchMessage(Handler.java:98)
    at android.os.Looper.loop(Looper.java:164)
    at android.app.ActivityThread.main(ActivityThread.java:6541)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)

Может кто-нибудь сказать мне, как именно должна работать лупа и как ее отключить? Я хочу разрешить пользователю только прокручивать и увеличивать фрагмент GoogleMaps.

Это фрагмент карты Google xml:

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <com.google.android.gms.maps.MapView
        android:id="@+id/mapview"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

</LinearLayout>

1 Ответ

1 голос
/ 08 апреля 2019

Вы можете вызвать этот метод из onMapReady (GoogleMap googleMap)

googleMap.getUiSettings().setZoomGesturesEnabled(false);

Keep Codeing:)

...