Firmy i inne ciekawe miejsca

Wybierz platformę: Android iOS JavaScript

Domyślnie ciekawe miejsca (POI) są wyświetlane na mapie podstawowej wraz z odpowiednimi ikonami. Mogą to być m.in. parki, szkoły i budynki rządowe.

Dodatkowo ważne miejsca z kategorii biznesowej domyślnie pojawiają się na mapie, gdy typ mapy to normal. Ważne miejsca (firmy) to m.in. sklepy, restauracje i hotele. Ważne miejsca z kategorii biznesowej na mapach obiektów (planach pięter) są widoczne tylko w wersji uproszczonej mapy.

Ciekawe miejsce odpowiada identyfikatorowi miejsca zdefiniowanemu w pakiecie SDK Miejsc na Androida. Na przykład parki rekreacyjne są ciekawymi miejscami, ale fontanny zwykle nie są (chyba że mają znaczenie narodowe lub historyczne).

Nasłuchiwanie zdarzeń kliknięcia w ważnych miejscach

Jeśli chcesz reagować, gdy użytkownik kliknie ciekawe miejsce, możesz użyć metody OnPoiClickListener, jak pokazano w tym przykładowym kodzie:

Kotlin

map.setOnPoiClickListener { poi ->
    Toast.makeText(
        context,
        """Clicked: ${poi.name}
        Place ID:${poi.placeId}
        Latitude:${poi.latLng.latitude} Longitude:${poi.latLng.longitude}""",
        Toast.LENGTH_SHORT,
    ).show()
}

      

Java

map.setOnPoiClickListener(
        new GoogleMap.OnPoiClickListener() {
            @Override
            public void onPoiClick(PointOfInterest poi) {
                Toast.makeText(
                                context,
                                "Clicked: "
                                        + poi.name
                                        + "\nPlace ID:"
                                        + poi.placeId
                                        + "\nLatitude:"
                                        + poi.latLng.latitude
                                        + " Longitude:"
                                        + poi.latLng.longitude,
                                Toast.LENGTH_SHORT)
                        .show();
            }
        });

      

Ciekawe miejsca są domyślnie wyświetlane na mapie, ale nie ma domyślnego interfejsu po kliknięciu. Oznacza to, że interfejs API nie wyświetla automatycznie okna informacyjnego ani żadnego innego interfejsu, gdy użytkownik kliknie ciekawe miejsce.

Jak widać w przykładzie powyżej, OnPoiClickListener ustawia się na mapie, wywołując GoogleMap.setOnPoiClickListener(OnPoiClickListener). Gdy użytkownik kliknie (dotknie) ciekawe miejsce, aplikacja otrzyma zdarzenie OnPoiClick(PointOfInterest) wskazujące ciekawe miejsce, które kliknął użytkownik. PointOfInterest zawiera współrzędne geograficzne, identyfikator miejsca i nazwę ważnego miejsca.

Zatrzymywanie wyświetlania ciekawych miejsc na mapie

Możesz ukryć ciekawe miejsca, stosując style niestandardowe do wszystkich ciekawych miejsc lub do określonych kategorii ciekawych miejsc.

Poniższa deklaracja stylu JSON ukrywa wszystkie ważne miejsca (firmy) na mapie:

[
  {
    "featureType": "poi.business",
    "stylers": [
      { "visibility": "off" }
    ]
  }
]

Inny przykład: ten kod JSON upraszcza wyświetlanie wszystkich kategorii ciekawych miejsc:

[
  {
    "featureType": "poi",
    "stylers": [
      { "visibility": "simplified" }
    ]
  }
]

Kod w języku Java i inne szczegóły znajdziesz w przewodniku na temat ukrywania elementów mapy za pomocą stylów.