Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/192.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 删除或替换多段线_Android_Google Maps_Polyline - Fatal编程技术网

Android 删除或替换多段线

Android 删除或替换多段线,android,google-maps,polyline,Android,Google Maps,Polyline,在我的应用程序中,我在地图上添加了2个标记。当我通过单击添加第二个标记时,我调用一个函数来计算路线并在地图上添加多段线。 这是多段线的代码 protected void onPostExecute(List<List<HashMap<String, String>>> result) { ArrayList<LatLng> points = null; PolylineOptions lineOptions = nu

在我的应用程序中,我在地图上添加了2个标记。当我通过单击添加第二个标记时,我调用一个函数来计算路线并在地图上添加多段线。 这是多段线的代码

protected void onPostExecute(List<List<HashMap<String, String>>> result) {
        ArrayList<LatLng> points = null;
        PolylineOptions lineOptions = null;
        MarkerOptions markerOptions = new MarkerOptions();
        String distance = "";
        String duration = "";
        String value_duration = "";


        // Traversing through all the routes
        for (int i = 0; i < result.size(); i++) {
            points = new ArrayList<LatLng>();
            lineOptions = new PolylineOptions();

            // Fetching i-th route
            List<HashMap<String, String>> path = result.get(i);

            // Fetching all the points in i-th route
            for (int j = 0; j < path.size(); j++) {
                HashMap<String, String> point = path.get(j);


                if (j == 0) {    // Get distance from the list
                    distance = (String) point.get("distance");
                    continue;
                } else if (j == 1) { // Get duration from the list
                    duration = (String) point.get("duration");
                    value_duration = (String) point.get("duration_");
                    continue;
                }

                double lat = Double.parseDouble(point.get("lat"));
                double lng = Double.parseDouble(point.get("lng"));
                LatLng position = new LatLng(lat, lng);

                points.add(position);
            }

            // Adding all the points in the route to LineOptions
            lineOptions.addAll(points);
            lineOptions.width(10);
            lineOptions.color(Color.parseColor("#F7B907"));

        }

        // Drawing polyline in the Google Map for the i-th route
        distanza_percorso = distance;
        durata_percorso = duration;

        testo_car.setText(durata_percorso);

        durata_tragitto = Float.parseFloat(value_duration);
        Log.d("durata_tragitto", "durata: " + value_duration);

        polylineFinal = map.addPolyline(lineOptions);


        moveToBounds(map.addPolyline(lineOptions));


    }
但不会删除地图上的多段线。 你能帮我吗?知道为什么吗


谢谢

不确定,但请尝试使用此更新您的添加多段线代码

polylineFinal = map.addPolyline(lineOptions);
moveToBounds(polylineFinal);
polylineFinal = map.addPolyline(lineOptions);
moveToBounds(polylineFinal);