我正在开发一个 android Google Maps 应用程序,并且在使用地图标记时遇到了问题。
这个问题可能有一个简单的解决方案,但经过搜索,我只找到了有关如何使用按钮添加标记的链接。我想要的是不同的:我想要一个标记,其相应的对话框有一个按钮。
有没有人做过类似的事情?
我正在开发一个 android Google Maps 应用程序,并且在使用地图标记时遇到了问题。
这个问题可能有一个简单的解决方案,但经过搜索,我只找到了有关如何使用按钮添加标记的链接。我想要的是不同的:我想要一个标记,其相应的对话框有一个按钮。
有没有人做过类似的事情?
虽然您可以创建一个InfoWindowAdapter
,并将其附加到您的GoogleMap
via setInfoWindowAdapter()
,以定制信息窗口的内容以包含 a Button
,但Button
将无法单击。不显示您View
从getInfoContents()
in返回。InfoWindowAdapter
相反,它被转换为 a Bitmap
,并且该图像就是显示的内容。
但是,您可以OnInfoWindowClickListener
通过setOnInfoWindowClickListener()
您的GoogleMap
.
@CommonsWare 关于InfoContent
转换为 a 的评论Bitmap
是正确的。因此,您不能使用 InfoWindows。尝试使用该GoogleMap.OnMarkerClickListener
事件来在 MapView 顶部显示您自己的视图。这GoogleMap.OnMarkerClickListener
将帮助您使用单击的标记作为参数。
如果要在正确的位置显示视图,则必须计算屏幕位置。使用 Projection 的toScreenLocation(LatLng location)
返回方法Point
将 LatLng 转换为 GoogleMap 的屏幕位置。
有关详细信息,请参阅投影。