Czy można zmienić poziom powiększenia myLocation za pomocą nowego interfejsu API Map Google w wersji 2?
Jeśli ustawisz GoogleMap.setEnableMyLocation(true);
, na mapie pojawi się przycisk umożliwiający znalezienie Twojej lokalizacji.
Jeśli go klikniesz, mapa przeniesie Cię do Twojej lokalizacji i przybliży ją do pewnego poziomu. Czy mogę zmienić to powiększenie na mniejsze lub większe?
Odpowiedzi:
Wątpliwe jest, aby można go było zmienić jednym kliknięciem za pomocą domyślnego markera myLocation. Jeśli jednak chcesz, aby aplikacja automatycznie powiększała Twoją lokalizację po jej znalezieniu, sprawdzę moją odpowiedź na to pytanie
Zwróć uwagę, że udzielona przeze mnie odpowiedź nie powiększa, ale jeśli zmodyfikujesz metodę onLocationChanged, aby była podobna do poniższej, możesz wybrać dowolny poziom powiększenia:
źródło
Możesz także użyć:
Wystarczy zmienić wartość zoomu na dowolną żądaną wartość między wartością minimalną = 2,0 a wartością maksymalną = 21,0.
Interfejs API ostrzega, że nie wszystkie lokalizacje mają kafelki o wartości zbliżonej do maksymalnego powiększenia.
Zobacz to, aby uzyskać więcej informacji na temat metod powiększania dostępnych w
CameraUpdateFactory
.źródło
z lokalizacją - w nowym SDK GoogleMaps:
źródło
Nieco inne rozwiązanie niż HeatfanJohn's, gdzie zmieniam zoom w stosunku do aktualnego poziomu zoomu:
źródło
Oto przybliżone poziomy powiększenia i ich działanie:
więc możesz zrobić coś takiego, na przykład, aby powiększyć do poziomu ulicy (zwróć uwagę, że „15f” poniżej to poziom ulicy):
uwaga: żebyś wiedział, że różne lokalizacje mogą mieć różne maksymalne poziomy powiększenia. spróbuj użyć,
googleMap.maxZoomLevel
jeśli chcesz uzyskać maksymalny lub minimalny poziom powiększenia.źródło
W metodzie onMapReady ()
zmień zoomLevel na dowolną żądaną wartość.
źródło
musisz napisać tylko jedną linię w maps_activity.xml
Mam nadzieję, że to rozwiąże Twój problem ...
źródło
Możesz użyć
źródło
Nawet ja ostatnio miałem to samo zapytanie ... trochę jak żadna z wyżej wymienionych setmaxzoom lub map: cameraZoom = "13" nie działa Więc stwierdziłem że zależność, której użyłem była stara proszę się upewnić, że twoja zależność od map google jest poprawne, to jest najnowsze użycie tego
źródło
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(currentPlace,15));
Nie będzie to miało efektu animacji.źródło
Jeśli chcesz zapisać powiększenie lub mieć go cały czas, wystarczy zadzwonić pod następujący numer
źródło
Większość powyższych odpowiedzi jest albo przestarzała, albo zoom działa, zachowując aktualną szerokość i długość geograficzną i nie powiększa do dokładnej lokalizacji, w której chcesz. Dodaj następujący kod do metody onMapReady () .
źródło
Próbowałem z "mMap.animateCamera (CameraUpdateFactory.zoomTo (17.0f));" ale to nie zadziałało dla mnie. Więc użyłem tej animacji do powiększenia na początku.
źródło