【问题标题】:can i check before add new marker whether at this location other marker already added or not?我可以在添加新标记之前检查在这个位置是否已经添加了其他标记?
【发布时间】:2016-05-11 21:40:44
【问题描述】:

我在谷歌地图上工作。我先用类型添加标记,然后再用距离添加标记,所以问题是在某个位置添加了两个标记。所以当我点击它时,它会交替改变。所以我需要在添加 distance.thanx 时检查标记是否已经存在。

【问题讨论】:

  • 请显示您的代码的相关部分。

标签: android google-maps google-maps-markers


【解决方案1】:

我认为最好的方法是将已添加的标记存储到集合中,然后搜索相同的标记。

ArrayList<Marker> collection = new ArrayList()<Marker>;
collection.add(map.addMarker(Marker));

像这样添加项目,然后是一个检查是否存在的函数

static boolean isMarkerOnArray(ArrayList<Marker> array, Marker m)
{
    for(int c=0;c<array.size();c++)
    {
        Marker current = array.get(c);
        if((current.getPosition().latitude == m.getPosition().latitude) &&(current.getPosition().longitude == m.getPosition().longitude) )
            return true;    //Both markers are equal
    }
return false;
}

手写代码,它可能是错误的,但我认为这是正确的做法。

希望这会有所帮助。

【讨论】:

  • static boolean isMarkerOnArray(List array, Object m) { for(Marker marker : array) { if((marker.getPosition().latitude == m.getLatitude()) &&( marker.getPosition().longitude == m.getLongitude())) { return true; //两个标记相等 } } return false; } 更好:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-11-16
  • 2014-12-31
  • 1970-01-01
  • 1970-01-01
  • 2010-12-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多