【发布时间】:2016-03-03 20:47:14
【问题描述】:
我正在我的应用程序中实现谷歌地图。我的要求是单击标记时显示自定义信息窗口。
我的自定义 infoWindow 包含一个列表视图,我需要根据点击的项目执行一些操作。
我得到了整个 infoWindow 的点击事件(使用 OnInfoWindowClickListener),但问题是,我没有得到 infoWindow 内列表视图的点击事件。
根据描述here
注意:绘制的信息窗口不是实时视图。视图在返回时呈现为图像(使用 View.draw(Canvas))。这意味着对视图的任何后续更改都不会反映在地图上的信息窗口中。要稍后更新信息窗口(例如,加载图像后),请调用 showInfoWindow()。此外,信息窗口不会尊重任何普通视图的典型交互性,例如触摸或手势事件。但是,您可以在整个信息窗口上收听通用点击事件,如下节所述。
那么有什么方法可以让我在自定义 infoWindow 中获取每个点击项目的点击事件?
【问题讨论】:
-
使用自定义适配器,在自定义适配器getview方法中,您可以添加布局和列表视图等.. googleMap.setInfoWindowAdapter(new MyCustomAdapterForItems());您的适配器实现 GoogleMap.InfoWindowAdapter 就像公共类 MyCustomAdapterForItems 实现 GoogleMap.InfoWindowAdapter { }
-
仍然无法正常工作:-(
-
有什么办法可以做到吗?
标签: android android-mapview android-maps-v2 android-maps