Android从地图v2中删除多段线

Android从地图v2中删除多段线,android,google-maps,google-polyline,Android,Google Maps,Google Polyline,我正在地图上画一条像动画一样的多段线。如下图所示 m_handler = new Handler(); m_handlerTask = new Runnable() { @Override public void run() { //line.remove(); if (t < pointsPoly.size() - 1) {

我正在地图上画一条像动画一样的
多段线。如下图所示

m_handler = new Handler();
        m_handlerTask = new Runnable() {
            @Override
            public void run() {
                //line.remove();
                if (t < pointsPoly.size() - 1) {

                    LatLng src = pointsPoly.get(t);
                    LatLng dest = pointsPoly.get(t + 1);
                    Polyline lineAnimation = googleMap.addPolyline(new PolylineOptions()
                            .add(new LatLng(src.latitude, src.longitude),
                                    new LatLng(dest.latitude, dest.longitude))
                            .width(10).color(Color.DKGRAY).geodesic(true));
                    t++;

                } else {
                    t = 0;

                }
                m_handler.postDelayed(m_handlerTask, polyLineTimer);
            }
        };
        m_handler.post(m_handlerTask);
m_handler=new handler();
m_handlerTask=new Runnable(){
@凌驾
公开募捐{
//行。删除();
if(t
如何删除
多段线
?我不想
clearMap()

我尝试了
lineAnimation.remove()但它不起作用。

您只需执行以下操作,而不是将结果赋给变量,而是将其放在ArrayList中

    ArrayList<Polyline> lines = new ArrayList<>();
    //Add line to map
    lines.add(mMap.addPolyline(new PolylineOptions()
                .add(new LatLng(location.getLatitude(), location.getLongitude()),
                        new LatLng(this.destinationLatitude, this.destinationLongitude))
                .width(1)
                .color(Color.DKGRAY));

    //Remove the same line from map
    line.remove();
ArrayList line=new ArrayList();
//将线添加到地图
lines.add(mMap.addPolyline(新的PolylineOptions)()
.add(新LatLng(location.getLatitude(),location.getLongitude()),
新LatLng(this.destinationlatude,this.destinationlatude))
.宽度(1)
.color(color.DKGRAY));
//从地图中删除同一条线
行。删除();
从地图中删除此多段线。删除多段线后, 其所有方法的行为都未定义


您只需执行以下操作,而不是将结果赋给变量,而是将其放在ArrayList中

    ArrayList<Polyline> lines = new ArrayList<>();
    //Add line to map
    lines.add(mMap.addPolyline(new PolylineOptions()
                .add(new LatLng(location.getLatitude(), location.getLongitude()),
                        new LatLng(this.destinationLatitude, this.destinationLongitude))
                .width(1)
                .color(Color.DKGRAY));

    //Remove the same line from map
    line.remove();
ArrayList line=new ArrayList();
//将线添加到地图
lines.add(mMap.addPolyline(新的PolylineOptions)()
.add(新LatLng(location.getLatitude(),location.getLongitude()),
新LatLng(this.destinationlatude,this.destinationlatude))
.宽度(1)
.color(color.DKGRAY));
//从地图中删除同一条线
行。删除();
从地图中删除此多段线。删除多段线后, 其所有方法的行为都未定义


你确定你没有多次添加那个多段线吗?所以当你试图删除它时,下面还有一个让你觉得它从未被删除过的多段线?每次创建一个多段线时,我都会尝试将它们存储在ArrayList中,然后在需要删除时,遍历该数组并删除它们…@jaythakin你能给我发一个示例吗添加和删除。你确定你没有多次添加该多段线吗?因此,当你试图删除它时,下面还有一条多段线让你认为它从未被删除过?每次创建一条多段线时,我都会尝试将它们存储在ArrayList中,然后在需要删除时,遍历该数组并删除它们…@jaythakin你能吗请给我一个添加和删除的示例。感谢您的快速回复。我不知道如何在arraylist中添加多段线并在地图上显示:(.我需要的解决方案:(非常感谢…….我明天会尝试,并会让您知道。再次感谢您,伙计。非常感谢您……它正在工作:)并且对于删除多段线,我喜欢这样做。谢谢(Polyline-line:polylines){line.remove();}polylines.clear();感谢您的快速回复。我不知道如何在arraylist中添加多段线并在地图上显示:(.这是我需要的解决方案:(非常感谢您…….我明天会试试,会让您知道的。再次感谢您。非常感谢您…它正在工作:)对于删除多段线,我是这样做的。对于(PolyLine-line:polylines){line.remove();}polylines.clear();