当单击 android 中的地图标记时,我正在使用自定义布局显示为 Infowindow。
在上图中,当我在 EditText 上单击以输入名称时,我确实观察到 Edit Text 没有被编辑并且整个窗口被选中。使用自定义布局时如何使信息窗口中的字段可点击?
请建议我任何想法。请帮忙!!
当单击 android 中的地图标记时,我正在使用自定义布局显示为 Infowindow。
在上图中,当我在 EditText 上单击以输入名称时,我确实观察到 Edit Text 没有被编辑并且整个窗口被选中。使用自定义布局时如何使信息窗口中的字段可点击?
请建议我任何想法。请帮忙!!
快速回答:you can't.
谷歌地图将您自定义的内容呈现InfoWindow
为图像,并将其作为图像显示给您。因此,您仅将单击侦听器设置为整个窗口,而不是其中的视图。
您唯一的选择是将其设置ClickListener
为整体InfoWindow
并弹出一个带有EditText
您想要的视图的对话框,而不是直接在InfoWindow
.
来自Google Docs
:https ://developers.google.com/maps/documentation/android/marker#info_windows
注意:绘制的信息窗口不是实时视图。视图在返回时呈现为图像(使用
View.draw(Canvas)
)。这意味着对视图的任何后续更改都不会反映在地图上的信息窗口中。要稍后更新信息窗口(例如,加载图像后),请调用showInfoWindow()
. 此外,信息窗口不会尊重任何普通视图的典型交互性,例如触摸或手势事件。但是,您可以在整个信息窗口上收听通用单击事件,如下节所述。