2017-04-03 63 views
0

我希望为Google地图添加多个标记,并且在添加标记之后将其中的每个标记永​​久删除并自动完全删除。我看到有人建议使用PostDelayed使标记闪烁。我想知道是否可以做到这一点,使它们消失。在地图上自动放置10秒后是否可以删除标记?

除此之外,如果这个方法真的有效,它能够处理大量的标记吗?如果每个PostDelayed创建一个线程,恐怕在一定数量的标记之后,性能会严重下降。

请给我一些建议。谢谢!

+0

使用postdelay与一个处理程序和多个可运行程序。不需要单独的线程。 – MoGa

回答

1

显示标记

Marker restuarantMarkers = gMap.addMarker(new MarkerOptions() 
       .position(latlng) 
       .title("MyPlace").icon(BitmapDescriptorFactory.fromResource(R.drawable.ic_pin)).draggable(true)); 

隐藏标记

restuarantMarkers.setVisible(false); 

使用这样的处理程序来隐藏标记

final Handler handler = new Handler(); 
    handler.postDelayed(new Runnable() { 
     @Override 
     public void run() { 
     // hide marker after 1000 millies means 1sec 
     } 
    }, 1000); 

^h这些帮助你。

+0

只需要清楚,在run()中,我需要实现标记的hide或remove函数吗? – Zack

+0

是的,你是对的。请告诉我它是否适合你。 –

+0

我还没有实现任何东西。但是当我这样做时,我会用结果更新你。谢谢! – Zack

相关问题