Za pomocą pakietu Maps SDK na Androida możesz dostosować sposób, w jaki użytkownicy mogą wchodzić w interakcje z mapą, określając, które z wbudowanych komponentów interfejsu które pojawiają się na mapie i które gesty są dozwolone.
Przykładowe fragmenty kodu
Repozytorium API Apigee na GitHubie zawiera: przykład użycia opcji sterowania i gestów:
- UiSettingsDemoActivity: przykład z Kotlin
- UiSettingsDemoActivity: przykładowy kod w języku Java
Wersja uproszczona zapewniająca minimalną interakcję użytkownika
Jeśli potrzebujesz prostej mapy z minimalną interakcją użytkownika, rozważ użycie w trybie uproszczonym. W wersji uproszczonej dostępny jest obraz mapy bitowej z określonym obszarem lokalizację i poziom powiększenia. W trybie uproszczonym użytkownicy nie mogą przesuwać ani powiększać mapy, gesty nie działają. Szczegółowe informacje znajdziesz w przewodniku po wersji uproszczonej.
Elementy sterujące interfejsu
Interfejs API Map Google ma wbudowane elementy interfejsu podobne do tych
w aplikacji Mapy Google w telefonie z systemem Android. Możesz zmienić
widoczność tych ustawień za pomocą klasy UiSettings
,
które można uzyskać z GoogleMap
z GoogleMap.getUiSettings
. Zmiany wprowadzone w tych zajęciach są natychmiast odzwierciedlane na mapie. Do
znajdziesz przykład tych funkcji, spójrz na aktywność demonstracyjną ustawień interfejsu w
przykładowej aplikacji.
Większość z tych opcji możesz też skonfigurować podczas tworzenia mapy:
za pomocą atrybutów XML lub GoogleMapOptions
zajęcia. Więcej informacji znajdziesz w sekcji Konfigurowanie stanu początkowego.
Każdy element sterujący w interfejsie ma wstępnie określone położenie względem krawędzi mapy.
Elementy sterujące możesz odsunąć od górnej, dolnej, lewej lub prawej krawędzi przez
dodając pełnienie do obiektu GoogleMap
.
Elementy sterujące powiększeniem
Interfejs API Map Google udostępnia wbudowane elementy sterujące powiększeniem, które znajdują się na dole
w prawym górnym rogu mapy. Domyślnie są one wyłączone, ale można je
włączone, wywołując metodę UiSettings.setZoomControlsEnabled(true)
.
![W prawym dolnym rogu znajdują się elementy sterujące powiększeniem. Elementy sterujące powiększeniem](https://developers.google.cn/static/maps/documentation/android-sdk/images/zoomcontrols.png?authuser=7&hl=pl)
Kompas
Interfejs API Map Google udostępnia grafikę kompasu, która wyświetla się w lewym górnym rogu
rogu mapy w pewnych okolicznościach. Kompas będzie zawsze
pojawiają się, gdy kamera jest zorientowana na położenie inne niż zero lub
niezerowe pochylenie. Gdy użytkownik kliknie kompas, kamera wróci do poprzedniego stanu
do pozycji z nachyleniem i nachyleniem wynoszącym 0 (orientacja domyślna)
i kompas po chwili znika. Możesz wyłączyć kompas
wyświetlane łącznie, wywołując UiSettings.setCompassEnabled(boolean)
.
Nie można jednak wymusić, aby kompas był zawsze widoczny.
![Kompas w lewym górnym rogu. Kompas](https://developers.google.cn/static/maps/documentation/android-sdk/images/compass.png?authuser=7&hl=pl)
Przycisk Moja lokalizacja
Przycisk Moja lokalizacja jest widoczny tylko w prawym górnym rogu ekranu. gdy włączona jest warstwa Moja lokalizacja. Szczegółowe informacje znajdziesz w przewodniku danych o lokalizacji.
![Przycisk Moja lokalizacja w prawym górnym rogu. Przycisk Moja lokalizacja](https://developers.google.cn/static/maps/documentation/android-sdk/images/mylocationbutton.png?authuser=7&hl=pl)
Selektor poziomów
Domyślnie selektor poziomu (selektor pięter) jest wyświetlany w środkowej prawej części krawędzi ekranu, gdy użytkownik ogląda mapę wnętrza. Gdy dwa lub więcej map obiektów, selektor poziomów będzie stosowany do budynku, który aktualnie ostrość, czyli to, które znajduje się najbliżej środka ekranu. Każdy budynek ma poziom domyślny, który zostanie wybrany, gdy selektor zostanie wyświetlane jako pierwsze. Użytkownicy mogą wybrać inny poziom, wybierając go z .
Aby wyłączyć lub włączyć selektor poziomu, wywołaj
GoogleMap.getUiSettings().setIndoorLevelPickerEnabled(boolean)
Jest to przydatne, gdy chcesz zastąpić selektor poziomu domyślnego własnym.
![Selektor poziomu w prawym środkowym miejscu. Selektor poziomów](https://developers.google.cn/static/maps/documentation/android-sdk/images/levelpicker.png?authuser=7&hl=pl)
Pasek narzędzi mapy
Domyślnie w prawym dolnym rogu mapy pojawia się pasek narzędzi, znacznik. Pasek narzędzi zapewnia szybki dostęp do aplikacji mobilnej Mapy Google.
Aby włączyć lub wyłączyć pasek narzędzi, wywołaj
UiSettings.setMapToolbarEnabled(boolean)
W mapie wersji uproszczonej pasek narzędzi działa niezależnie od . Na mapie interaktywnej pasek narzędzi przesuwa się, gdy użytkownik naciśnie i wysunie się ponownie, gdy znacznik przestanie być aktywny.
Na pasku narzędzi są wyświetlane ikony zapewniające dostęp do widoku mapy lub wskazówek dojazdu. w aplikacji mobilnej Mapy Google. Gdy użytkownik kliknie ikonę na pasku narzędzi, interfejs API tworzy zamiar uruchomienia odpowiedniego działania. w aplikacji mobilnej Mapy Google.
![Pasek narzędzi w prawym dolnym rogu. Pasek narzędzi mapy](https://developers.google.cn/static/maps/documentation/android-sdk/images/intents.png?authuser=7&hl=pl)
Pasek narzędzi jest widoczny w prawym dolnym rogu mapy na zrzucie ekranu powyżej. Na mapie pojawi się zero, jedna lub obie ikony intencji, w zależności od treści mapy oraz pod warunkiem, że aplikacja mobilna Mapy Google obsługuje wynikową intencję.
Gesty w Mapach
Mapa utworzona za pomocą pakietu Maps SDK na Androida obsługuje te same gesty co aplikacji Mapy Google. Może jednak się zdarzyć, że konieczne będzie aby wyłączyć określone gesty i zachować stan mapy. powiększenie, przesuwania, pochylenia i przesuwania można również ustawić automatycznie – patrz Aparat i widok. Pamiętaj, że przy wyłączaniu gestów nie ma wpływu na możliwość automatycznej zmiany pozycji kamery.
Podobnie jak w przypadku elementów sterujących interfejsu, gesty możesz włączać i wyłączać za pomocą
UiSettings
, które można uzyskać z GoogleMap
dzwoniąc pod numer GoogleMap.getUiSettings
. Zmiany wprowadzone na tych zajęciach:
natychmiast odzwierciedlane na mapie. Aby zobaczyć przykłady tych funkcji,
w ustawieniach interfejsu użytkownika w przykładowej aplikacji (zobacz
tutaj znajdziesz instrukcje instalacji).
Możesz także skonfigurować te opcje podczas tworzenia mapy za pomocą kodu XML
atrybutów lub użycia klasy GoogleMapOptions
.
Więcej informacji znajdziesz w artykule Konfigurowanie mapy.
Gesty powiększenia
Mapa reaguje na różne gesty, które mogą zmieniać poziom powiększenia kamera:
- Kliknij dwukrotnie, aby zwiększyć poziom powiększenia o 1.
- Dotknij dwoma palcami, aby zmniejszyć poziom powiększenia o 1.
- Ściągnij/rozciągnij 2 palcami
- powiększanie jednym palcem, klikając dwukrotnie, ale nie uwalniając przy drugim dotknięciu, i przesuń palcem w górę, aby pomniejszyć, lub w dół, aby powiększyć.
Gesty powiększenia możesz wyłączyć, dzwoniąc
UiSettings.setZoomGesturesEnabled(boolean)
Nie wpłynie to na to, czy
za pomocą elementów sterujących powiększeniem.
Gesty przewijania (przesuwania)
Użytkownik może przewijać mapę, przeciągając ją palcem.
Możesz wyłączyć przewijanie, łącząc się z
UiSettings.setScrollGesturesEnabled(boolean)
Gesty pochylenia
Użytkownik może przechylić mapę, umieszczając na niej dwa palce i przesuwając je w dół.
lub w górę, aby odpowiednio zwiększać lub zmniejszać kąt nachylenia. Dostępne opcje
wyłącz gesty przechylania, wywołując funkcję UiSettings.setTiltGesturesEnabled(boolean)
.
Gesty obracania
Użytkownik może obrócić mapę, umieszczając na niej dwa palce i stosując
i obrót. Możesz wyłączyć rotację, wywołując
UiSettings.setRotateGesturesEnabled(boolean)