6

当 infowindow 被关闭时,你触发动作的方式是什么?我找不到任何听众。我正在考虑运行一些后台 Runnable 检查是否 marker.isInfoWindowShown()。

我想要做的 - 在我的地图上显示按钮,当用户点击点(出现 infoWindow)时,屏幕底部也有这个按钮。当 infoWindow 消失时,该按钮也不再可见。

我应该阅读哪些听众的任何提示?

4

2 回答 2

13

目前在 google maps android api 中,没有对应于标记信息窗口关闭的直接侦听器。但是您可以通过检查以下将作为关闭信息窗口的原因的事件来在您的应用程序中实现所需的功能:

1、GoogleMap.OnMapClickListener :当用户点击地图时,任何当前可见的信息窗口都会被关闭。因此,您可以在此侦听器中添加一个逻辑,以在 infowindow 关闭时执行所需的功能

2、marker.hideInfoWindow():一个信息窗口将被关闭的另一个原因是如果你在一个标记上调用了 hideinfowindow 方法。如果调用此方法,则应在调用此方法后立即添加关闭信息窗口时所需的功能。

于 2013-09-12T06:12:21.197 回答
7

好吧,我来不及回答这个问题,但现在可以通过以下方法知道谷歌地图的信息窗口何时关闭。

 @Override
    public void onMapReady(GoogleMap googleMap) {
        mMap = googleMap;

        mMap.setOnInfoWindowCloseListener(new GoogleMap.OnInfoWindowCloseListener() {
            @Override
            public void onInfoWindowClose(Marker marker) {
               //hide or do something you want
            }
        });
}
于 2017-03-09T08:50:18.760 回答