Закрытый шар показанный на MapView

У меня есть MapView с ItemizedOverlay и куча OverlayItem:s. При касании элемента OverlayItem в пользовательском макете всплывающее окно отображается в MapView. Я могу добавить кнопку закрытия, которая скрывает макет воздушного шара. Но как я могу закрыть шарик, если пользователь нажмет: s на карте вне шарика? У меня есть OnTouchListener на MapView, но как я могу из этого локализовать открытую разметку и скрыть ее?

1 ответ

Решение

Вы можете добавить логическое свойство в свой собственный макет ballon с именем isOpen, для которого вы установите значение true, когда баллон открывается, и false, когда закрыто. Если пользователь касается внешнего шара, в вашем событии onTouch выполните итерацию по списку OverlayItems и проверьте его свойство isOpen - если оно истинно, закройте его и выйдите из цикла итерации.

Другие вопросы по тегам