Подскажите, правильно я понимаю, что InfoWindow не поддерживает html?
Также отсутствуют и способы разместить в нем дополнительную информацию (кроме caption) из экземпляра объекта, по координатам которого создается marker? Ссылку на открытие этого экземпляра в системе тоже на карте разместить не удастся?
Добрый день.
- InfoWindow content поддерижает HTML.
- Что вы подразумеваете под дополнительным контентом?
- Показать InfoWindow можно и без привязки к маркеру, например:
public void showInfoWindow() {
InfoWindow infoWindow = map.createInfoWindow("<strong>Test</strong>: test");
GeoPoint geoPoint = map.createGeoPoint(53.75, -4.10);
infoWindow.setPosition(geoPoint);
map.openInfoWindow(infoWindow);
}
Глеб, добрый день.
Вывожу маркеры на карты по списку объектов системы. Цель:показывать дополнительную информацию по щелчку на маркер. В дополнительной информации хочу показать несколько атрибутов этого объекта и было бы здорово ссылку для открытия объекта в системе.
Могли бы Вы подробнее описать, что конкретно у Вас не получается?
Так а вроде бы все просто: InfoWindow я показываю по листнеру
map.addMarkerClickListener(e -> {
Marker marker = e.getMarker();
InfoWindow window = map.createInfoWindow(marker.getCaption(), marker);
map.openInfoWindow(window);
});
При этом сам маркер “оторван” от объекта, на основе которого он создан. Т.е. из маркера я не могу получить атрибутов родительского объекта.
Может быть есть возможность при создании маркера записать в него что-то дополнительно?
В самом простом варианте Вы можете просто создать Map
для сопоставления Marker-Entity
. Как альтернативный вариант, Вы можете создать обертку над Marker
и Entity
и передавать ее в map.addMarker(...)
. Все зависит от конкретных задач.
Спасибо. Попробую этот вариант.
Глеб, а можете дать несколько строк в качестве примера для этого варианта?
Глеб, а можете дать несколько строк в качестве примера для этого варианта?
Это был поспешный совет) В данный момент сделать обертку для маркера сложнее, чем мне казалось на первый взгляд.