necesita eliminar la última polilínea y crear la polilínea actual

hago google map con google direction uso classhttp://www.akexorcist.com/2015/12/google-direction-library-for-android-en.html que alguien construye para google direction. todo funciona bien, y la polilínea se muestra en el mapa. pero cuando necesito hacer clic en otra dirección, como la dirección de caminar o la dirección de manejo, veo 2 polilíneas en el mapa y quiero ver solo la polilínea actual.

aquí creo la polilínea y elimino la polilínea al principio, luego la polilínea no se muestra en absoluto. No quiero eso. Quiero que cuando haga clic en el botón de otra cosa, la polilínea se eliminará. trato de poner, polyline.remove (); al hacer clic en el botón, sino en el problema de que si, polyline.remove (); fuera de los paréntesis, polyline.remove (); No quite la polilínea. necesito llamar a polyline.remove (); cuando hago clic en otro botón pero me atasco. Aquí está el código:

    switch (direction.getStatus()) {
        case RequestResult.OK:
            Route route = direction.getRouteList().get(0);

            Leg leg = route.getLegList().get(0);

            ArrayList<LatLng> pointList = leg.getDirectionPoint();

            List<Step> stepList = direction.getRouteList().get(0).getLegList().get(0).getStepList();
            ArrayList<PolylineOptions> polylineOptionList = DirectionConverter.createTransitPolyline(this, stepList, 5, Color.RED, 3, Color.BLUE);
            for (PolylineOptions polylineOption : polylineOptionList) {
                polyline = mMap.addPolyline(polylineOption);
                polyline.remove();

            }

                break;

2. Cuando hago clic en el botón para caminar, quiero que se elimine la polilínea de tránsito que tenemos todo el tiempo, solo una polilínea en el mapa. ¿Cómo hago eso?

   bWalking.setOnClickListener(new View.OnClickListener() {
                                        @Override
                                        public void onClick(View v) {
                                            if (locationGpsLatLng == null) {
                                                Toast.makeText(MapsActivity.this, "Need GPS location", `enter code here`Toast.LENGTH_SHORT).show();{
                                                    return;
                                                }
                                            }
                                            if (markerLocation == null) {
                                                Toast.makeText(MapsActivity.this, "Type on marker bathroom for destination", Toast.LENGTH_SHORT).show();
                                            } else {
                                            sendRequestWalkingDirection();


                                        }
                                    };
                                    private void sendRequestWalkingDirection() {
                                        GoogleDirection.withServerKey(APIKEY)
                                                .from(locationGpsLatLng)
                                                .to(markerLocation)
                                                .transportMode(TransportMode.WALKING)
                                                .execute(new DirectionCallback() {
                                                    @Override
                                                    public void onDirectionSuccess(Direction direction, String rawBody) {
                                                        Log.d("onDirectionSuccess", "status: " + direction.getStatus());
                                                        requestOk(direction, rawBody);
                                                        mMap.addMarker(new MarkerOptions().position(locationGpsLatLng).draggable(false).icon(BitmapDescriptorFactory
                                                                .defaultMarker(BitmapDescriptorFactory.HUE_RED)));
                                                        CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngZoom(locationGpsLatLng, 15);
                                                        mMap.animateCamera(cameraUpdate);
                                                    }
                                                    @Override
                                                    public void onDirectionFailure(Throwable t) {
                                                        return;
                                                    }
                                                });
                                    }
   });

Respuestas a la pregunta(2)

Su respuesta a la pregunta