Pisak

publiczna klasa końcowy Marker rozszerza obiekt

Ikona umieszczona w określonym punkcie na powierzchni mapy Ikona znacznika jest rysowana zorientowaną na ekran urządzenia, a nie na powierzchnię mapy. Oznacza to, że nie musi zmieniać orientacji w wyniku jej obrotu, przechylenia lub powiększenia.

Znacznik ma te właściwości:

Alfa
Ustawia przezroczystość znacznika. Domyślna wartość to 1,0.
Kotwica
Punkt na zdjęciu, który zostanie umieszczony w pozycji LatLng znacznika. Domyślnie jest to 50% od lewej krawędzi obrazu i u dołu obrazu.
Pozycja
Wartość LatLng dotycząca pozycji znacznika na mapie. Jeśli chcesz przenieść znacznik, w każdej chwili możesz zmienić tę wartość.
tytuł,
Ciąg tekstowy wyświetlany w oknie informacyjnym, gdy użytkownik kliknie znacznik. W każdej chwili możesz zmienić tę wartość.
Krótki opis
Dodatkowy tekst wyświetlany pod tytułem. W każdej chwili możesz ją zmienić.
Ikona
Bitmapa wyświetlana dla znacznika. Jeśli jej nie skonfigurujesz, wyświetli się ikona domyślna. Za pomocą parametru defaultMarker(float) możesz określić alternatywny kolor ikony domyślnej.
Stan przeciągania
Jeśli chcesz zezwolić użytkownikowi na przeciąganie znacznika, ustaw tę właściwość na true. W każdej chwili możesz zmienić tę wartość. Wartość domyślna to false.
Widoczność
Domyślnie znacznik jest widoczny. Aby ukryć znacznik, ustaw tę właściwość na false. W każdej chwili możesz ją zmienić.
Płaski lub billboard
Jeśli znacznik znajduje się płasko względem mapy, pozostanie na mapie podczas obracania i pochylania kamery, ale jej rozmiar pozostanie taki sam jak rozmiar przybliżonej kamery (w przeciwieństwie do aparatu GroundOverlay). Jeśli znacznik jest billboardem, będzie zawsze rysowany w kierunku kamery oraz będzie się obracał i pochylał wraz z kamerą. Wartością domyślną jest billboard (false)
Rotacja
Obrót znacznika o stopnie w prawo wokół punktu zakotwiczenia znacznika. Oś obrotu jest prostopadła do znacznika. Rotacja o wartości 0 odpowiada domyślnej pozycji znacznika. Gdy znacznik jest płaski na mapie, domyślnym położeniem jest wyrównane na północ, a obrót jest przy tym, że znacznik zawsze pozostaje płasko na mapie. Gdy znacznik jest ustawiony na billboard, jego domyślna pozycja jest skierowana do góry, a obrót jest zapewniany zawsze w kierunku kamery. Wartością domyślną jest 0.
zIndex
Kolejność rysowania znacznika. Znaczniki są rysowane w kolejności od indeksu zIndex, w którym na górze znajduje się najwyższa wartość z indeksu zIndex. Dzięki ustawieniu właściwości zIndex dla każdego znacznika możesz kontrolować, które docelowe elementy dotykowe najprawdopodobniej trafi do użytkowników. Wartością domyślną jest 0.
Oznacz
Object powiązany ze znacznikiem. Na przykład obiekt Object może zawierać dane o tym, co reprezentuje znacznik. To łatwiejsze niż przechowywanie osobnego elementu Map<Marker, Object>. Inny przykład możesz powiązać z identyfikatorem String odpowiadającym identyfikatorowi ze zbioru danych. Pakiet SDK Map Google na Androida nie odczytuje ani nie zapisuje tej właściwości.

Metody w tej klasie muszą być wywoływane w wątku interfejsu Androida. Jeśli nie, w czasie działania wywoływany jest kod IllegalStateException.

Przykład

GoogleMap map = ... // get a map.
 // Add a marker at San Francisco.
 Marker marker = map.addMarker(new MarkerOptions()
     .position(new LatLng(37.7750, 122.4183))
     .title("San Francisco")
     .snippet("Population: 776733"));
 

Przewodnik dla programistów

Więcej informacji znajdziesz w przewodniku dla programistów dotyczącym Markers.

Podsumowanie zagnieżdżonych zajęć

@interfejs Marker.CollisionBehavior Wskazuje, jak zostanie potraktowany znacznik, gdy wystąpi kolizja z innymi znacznikami lub etykietami mapy podstawowej. 

Podsumowanie metod publicznych

boolean
równa się(inny obiekt)
Sprawdza, czy wartość Marker jest równa innej wartości.
float
getAlpha()
Pobiera wartość alfa znacznika.
Ciąg znaków
getId()
Pobiera identyfikator tego znacznika.
LatLng
getPosition()
Zwraca pozycję znacznika.
float
getRotation(),
Pobiera obrót znacznika.
Ciąg znaków
getSnippet(),
Pobiera fragment znacznika.
Obiekt
getTag()
Pobiera tag dla znacznika.
Ciąg znaków
getTitle()
Pobiera tytuł znacznika.
float
getZIndex(),
Zwraca wartość zIndex znacznika.
int
void
hideInfoWindow()
Ukrywa okno informacyjne, jeśli jest wyświetlane z tego znacznika.
boolean
isDraggable(),
Pobiera możliwość przeciągania znacznika.
boolean
isFlat()
Uzyskuje płaskie ustawienie znacznika.
boolean
isInfoWindowShown()
Wskazuje, czy okno informacyjne jest obecnie wyświetlane nad tym znacznikiem.
boolean
isVisible(),
Pobiera ustawienie widoczności tego znacznika.
void
remove()
Usuwa ten znacznik z mapy.
void
setAlpha(liczba zmiennoprzecinkowa alfa)
Ustawia wartość alfa (przezroczystość) znacznika.
void
setAnchor(kotwiczenie zmiennoprzecinkowe, kotwica zmiennoprzecinkowaV)
Ustawia punkt zakotwiczenia znacznika.
void
setDraggable(wartość logiczna do przeciągania)
Ustawia możliwość przeciągania znacznika.
void
setFlat(wartość logiczna płaska)
Określa, czy ten znacznik powinien znajdować się płasko względem mapy true czy billboardu w stronę kamery false.
void
setIcon(BitmapDescriptor iconDescriptor)
Ustawia ikonę znacznika.
void
setInfoWindowAnchor(kotwiczenie zmiennoprzecinkowe, kotwica zmiennoprzecinkowaV)
Określa punkt na obrazie znacznika, w którym ma być zakotwiczone okno informacyjne, gdy jest ono wyświetlane.
void
setPosition(szerokość geograficzna LatLng)
Określa lokalizację znacznika.
void
setRotation(rotacja zmiennoprzecinkowa)
Ustawia obrót znacznika w stopniach w prawo wokół jego punktu zakotwiczenia.
void
setSnippet(fragment ciągu znaków)
Ustawia fragment znacznika.
void
setTag(tag obiektu)
Ustawia tag znacznika.
void
setTitle(tytuł ciągu znaków)
Ustawia tytuł znacznika.
void
setVisible(widoczna wartość logiczna)
Ustawia widoczność tego znacznika.
void
setZIndex(zIndex z wykorzystaniem liczby zmiennoprzecinkowej)
Ustawia wartość zIndex znacznika.
void
showInfoWindow()
Pokazuje okno informacyjne tego znacznika na mapie, jeśli ten znacznik to isVisible().

Podsumowanie metod dziedziczonych

Metody publiczne

publiczna wartość logiczna równa się (Inny obiekt)

Sprawdza, czy wartość Marker jest równa innej wartości.

Parametry
inne Object.
Akcje powrotne
  • true, jeśli oba obiekty są tym samym obiektem, tj. ten == inny.

public float getAlpha ()

Pobiera wartość alfa znacznika.

Akcje powrotne
  • wartość alfa znacznika w zakresie [0, 1].

public String getId ()

Pobiera identyfikator tego znacznika. Ten identyfikator jest unikalny wśród wszystkich znaczników na mapie.

Akcje powrotne
  • identyfikator tego znacznika.

public LatLng getPosition ()

Zwraca pozycję znacznika.

Akcje powrotne
  • Obiekt LatLng określający bieżącą pozycję znacznika.

public float getRotation ()

Pobiera obrót znacznika.

Akcje powrotne
  • obrót znacznika od pozycji domyślnej o stopnie w prawo.

public String getSnippet ()

Pobiera fragment znacznika.

Akcje powrotne
  • Ciąg tekstowy zawierający fragment kodu znacznika.

public Object getTag ()

Pobiera tag dla znacznika.

Akcje powrotne
  • jeśli tag został ustawiony o wartości setTag lub null, jeśli nie ustawiono żadnego tagu.

public String getTitle ()

Pobiera tytuł znacznika.

Akcje powrotne
  • Ciąg tekstowy zawierający tytuł znacznika.

public float getZIndex ()

Zwraca wartość zIndex znacznika.

Akcje powrotne
  • zIndex dla tego znacznika.

public int hashCode ()

public void hideInfoWindow ()

Ukrywa okno informacyjne, jeśli jest wyświetlane z tego znacznika.

Ta metoda nie działa, jeśli ten znacznik nie jest widoczny.

public boolean isDraggable ()

Pobiera możliwość przeciągania znacznika. Gdy znacznik można przeciągać, użytkownik może go przesunąć, przytrzymując go.

Akcje powrotne
  • true, jeśli znacznik można przeciągać. W przeciwnym razie zwraca wartość false.

public boolean isFlat ()

Uzyskuje płaskie ustawienie znacznika.

Akcje powrotne
  • true, jeśli znacznik znajduje się płasko względem mapy; false, jeśli znacznik powinien być zwrócony w stronę aparatu.

public boolean isInfoWindowShown ()

Wskazuje, czy okno informacyjne jest obecnie wyświetlane nad tym znacznikiem. Nie ma przy tym znaczenia, czy okno informacyjne faktycznie jest widoczne na ekranie.

public boolean isVisible ()

Pobiera ustawienie widoczności tego znacznika. Pamiętaj, że nie wskazuje to, czy znacznik znajduje się w obszarze widocznym na ekranie. Wskazuje, czy znacznik zostanie narysowany, jeśli znajdzie się w obszarze widocznym na ekranie.

Akcje powrotne
  • widoczność tego znacznika.

public void remove ()

Usuwa ten znacznik z mapy. Po usunięciu znacznika zachowanie wszystkich jego metod staje się nieokreślone.

public void setAlpha (liczba zmiennoprzecinkowa alfa)

Ustawia wartość alfa (przezroczystość) znacznika. Należy użyć wartości z zakresu od 0 do 1, gdzie 0 oznacza, że znacznik jest całkowicie przezroczysty, a 1 oznacza, że jest całkowicie nieprzezroczysty.

Parametry
alfa

public void setAnchor (zmiennoprzecinkowy AnchorU, floatV)

Ustawia punkt zakotwiczenia znacznika.

Kotwica określa punkt na obrazie ikony, który jest zakotwiczony w pozycji znacznika na powierzchni Ziemi.

Punkt zakotwiczenia jest określany jako ciągły odstęp [0,0, 1,0] x [0,0, 1,0], gdzie (0, 0) to lewy górny róg obrazu, a (1, 1) to jego prawy dolny róg. Punkt zakotwiczenia na obrazie W × W to najbliższy dyskretny punkt siatki na siatce (W + 1) x (H + 1). Wynik ten uzyskuje się przez skalowanie, a następnie zaokrąglenie. Na przykład w obrazie o wymiarach 4 × 2 punkt zakotwiczenia (0, 7, 0, 6) przestawia się na punkt siatki w miejscu (3, 1).

 *-----+-----+-----+-----*
 |     |     |     |     |
 |     |     |     |     |
 +-----+-----+-----+-----+
 |     |     |   X |     |   (U, V) = (0.7, 0.6)
 |     |     |     |     |
 *-----+-----+-----+-----*
 *-----+-----+-----+-----*
 |     |     |     |     |
 |     |     |     |     |
 +-----+-----+-----X-----+   (X, Y) = (3, 1)
 |     |     |     |     |
 |     |     |     |     |
 *-----+-----+-----+-----*
 

Parametry
anchorU współrzędna u kotwicy jako stosunek szerokości obrazu (w zakresie [0, 1]).
anchorV współrzędna v kotwicy jako współczynnik wysokości obrazu (w zakresie [0, 1]).

public void setDraggable (boolean draggable)

Ustawia możliwość przeciągania znacznika. Gdy znacznik można przeciągać, użytkownik może go przesunąć, przytrzymując go.

Parametry
przeciągalny

public void setFlat (wartość logiczna płaska)

Określa, czy ten znacznik powinien znajdować się płasko względem mapy true czy billboardu w stronę kamery false.

Parametry
bez zmian

public void setIcon (BitmapDescriptor iconDescriptor)

Ustawia ikonę znacznika.

Parametry
iconDescriptor w przypadku wartości null używany jest znacznik domyślny.

public void setInfoWindowAnchor (floating AnchorU, floatV)

Określa punkt na obrazie znacznika, w którym ma być zakotwiczone okno informacyjne, gdy jest ono wyświetlane. Jest ona określona w tym samym układzie współrzędnych co kotwica. Więcej informacji: setAnchor(float, float). Domyślnie znajduje się na środku u góry obrazu.

Parametry
anchorU współrzędna u kotwicy okna informacyjnego jako stosunek szerokości obrazu (w zakresie [0, 1]).
anchorV współrzędna v kotwicy okna informacyjnego jako współczynnik wysokości obrazu (w zakresie [0, 1]).

public void setPosition (LatLng latlng)

Określa lokalizację znacznika.

Parametry
latlng

public void setRotation (rotacja zmiennoprzecinkowa)

Ustawia obrót znacznika w stopniach w prawo wokół jego punktu zakotwiczenia. Oś obrotu jest prostopadła do znacznika. Rotacja o wartości 0 odpowiada domyślnej pozycji znacznika.

Parametry
rotacja

public void setSnippet (fragment ciągu znaków)

Ustawia fragment znacznika.

Parametry
krótki opis | fragment Jeśli wartość to null, fragment kodu jest usuwany.

public void setTag (tag obiektu)

Ustawia tag znacznika.

Możesz użyć tej właściwości, aby powiązać z tym znacznikiem dowolny obiekt Object. Na przykład właściwość Object może zawierać dane o tym, co reprezentuje znacznik. Jest to łatwiejsze niż przechowywanie osobnego elementu Map<Marker, Object>. Możesz też powiązać identyfikator String odpowiadający identyfikatorowi ze zbioru danych. Pakiet SDK Map Google na Androida nie odczytuje ani nie zapisuje tej właściwości. Twoim obowiązkiem jest wywołanie metody setTag(null) w celu usunięcia tagu, gdy nie będzie już potrzebny. Zapobiegnie to wyciekom pamięci w aplikacji.

Parametry
tag Jeśli wartość to null, tag jest usuwany.

public void setTitle (tytuł ciągu)

Ustawia tytuł znacznika.

Parametry
title Jeśli wartość to null, tytuł zostanie wyczyszczony.

public void setVisible (boolean visible)

Ustawia widoczność tego znacznika. Jeśli ustawiona jest wartość false, a dla tego znacznika jest aktualnie wyświetlane okno informacyjne, okno informacyjne zostanie ukryte.

Parametry
widoczna

public void setZIndex (float zIndex)

Ustawia wartość zIndex znacznika.

Parametry
zIndex

public void showInfoWindow ()

Pokazuje okno informacyjne tego znacznika na mapie, jeśli ten znacznik to isVisible().

Rzuty
IllegalArgumentException Jeśli marker nie jest na tej mapie