如果 marker.setMap == null 做一些事情



我想通过谷歌地图实现一些东西,我需要知道setMap是alreay set还是null。我怎样才能实现这样的东西:

if (marker.setMap == null)
{
    marker.setMap(map);
}

你必须调用 getMap 函数,而不是检查 setMap 函数是否为空。 这将切换标记:

if (marker.getMap() == null) marker.setMap(map);
else marker.setMap(null);

甚至

if (!marker.getMap()) marker.setMap(map);
else marker.setMap(null);
你不能

这样做,因为marker.setMap删除了对map.
的引用。相反,使用marker.setVisible(false)隐藏标记,然后只需测试标记的可见性即可。 setVisible只是隐藏标记,但对地图的引用不会丢失。

最新更新