Android地图设置了多个不可见的标记

时间:2014-07-24 09:06:28

标签: android google-maps

如何在Android Maps V2上隐藏多个标记?

我有10个标记。 5某种类型的电影院和另外5种类型的电影院。

如果我使用下面的代码,则只有最后一个标记消失。

Marker cinema1,cinema2;

cinema1 = gMap.addMarker ......

cinema1 = gMap.addMarker ......

cinema2 = gMap.addMarker ......

cinema2 = gMap.addMarker ......

等等

点击活动

cinema1.setVisible(假);

这只会将最后一个标记=到cinema1设置为不可见(显然),所以问题是如何设置所有5个标记不可见而不为每个标记声明标记?

由于

2 个答案:

答案 0 :(得分:2)

您应该使用标记创建列表并在其帮助下进行操作。

Marker dilers1,dilers2;
List<Marker> markers = new ArrayList<>();
dilers1 = mMap.addMarker(new MarkerOptions().position(new LatLng(55.755823,37.622315)).title("Melbourne"));
dilers2 = mMap.addMarker(new MarkerOptions().position(new LatLng(55.765823,37.612315)).title("Melbourne2"));
markers.add(dilers1);
markers.add(dilers2);

public void changer(){
   for (Marker mkr: markers) {
       mkr.setVisible(false);
   }

}

答案 1 :(得分:0)

如果您的类型有ID

,则可以使用Hashmap
Hashmap<Integer, Marker> markers = new Hashmap<Integer, Marker>()

markers.Add(cinema1.getID(), gMap.addMarker(...));
markers.Add(cinema2.getID(), gMap.addMarker(...));
markers.Add(cinema3.getID(), gMap.addMarker(...));