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 tofalse
. - 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 obiektObject
może zawierać dane o tym, co reprezentuje znacznik. To łatwiejsze niż przechowywanie osobnego elementuMap<Marker, Object>
. Inny przykład możesz powiązać z identyfikatoremString
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 | |
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 |
hashCode()
|
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 | |
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 | |
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)
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
lubnull
, 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 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
|
---|