Функция showInfoWindow () не работает в Google Maps - PullRequest
0 голосов
/ 14 января 2020

У меня есть карта Google с некоторыми маркерами, и у каждого из них есть заголовок и фрагмент. Я храню маркеры в HashMap. Я хочу отобразить заголовок и фрагмент с функцией showInfoWindow (), когда кнопка нажата. это мой код:

Marker m = getMarker(location); //this function return marker from HashMap with its location
if(m!=null)
    m.showInfoWindow();

m не равен нулю, но showInfoWindow () не работает

отладочный вывод: enter image description here

m.getTitle () log: enter image description here

Ответы [ 2 ]

0 голосов
/ 14 января 2020

Для показа infoWindow ваш маркер должен иметь заголовок.

 MarkerOptions marker = new MarkerOptions().position(location)
                .icon(BitmapDescriptorFactory.fromBitmap(aBitmapFile))
                .title("The Title"); //here is title
        mapPoint p = new mapPoint(lat, lng);
        googleMap.addMarker(marker);

тогда вы можете позвонить: .showInfoWindow(); на свой маркер.

0 голосов
/ 14 января 2020

Измените свой код на этот

    Marker m = getMarker(location);
if(m!= null){
    m.showInfoWindow();
}

Объект Marker будет нулевым, если маркер еще не был отображен на карте, поэтому обязательно убедитесь, что маркерный объект не нулевой, прежде чем использовать его.

...