Рисование полилиний в гугл картах каждые 5 секунд - PullRequest
0 голосов
/ 05 декабря 2018

Я в основном пытаюсь рисовать полилинии на картах Google каждые 5 секунд. Я добавил значения lat и lng в ArrayList и использовал цикл for для выполнения операции. Теперь как я могу после первого рисования Polyline реализовать поток сфункция sleep (5s), а затем выполнить снова?

Итак, я хочу, чтобы после выполнения первого

new LatLng(latThread.get(i), lngThread.get(i)),
                            new LatLng(latThread.get(i+1), lngThread.get(i+1))

я хотел, чтобы поток спал 5 секунд и выполнял следующий цикл for?

Спасибо!

Вот мой код:

  @Override
public void onMapReady(GoogleMap googleMap) {
    mMap = googleMap;

    //Thread



    ArrayList<Double> latThread = new ArrayList<>();
    ArrayList<Double>  lngThread=new ArrayList<>();



    //Thread for lat
    latThread.add(51.611290);
    latThread.add(51.591290);
    latThread.add(51.561290);
    latThread.add(51.531290);
    latThread.add(51.521290);
    latThread.add(51.501290);

    //Thread for lng
    lngThread.add(7.197380);
    lngThread.add(7.177380);
    lngThread.add(7.157380);
    lngThread.add(7.137380);
    lngThread.add(7.117380);
    lngThread.add(7.107380);




    for(int i = 0;i<5;i++) {
        //  LatLng l1=latThread.get(i);
        //    LatLng l1 = new LatLng(latThread.get(i), lngThread.get(i));

        Polyline polyline = googleMap.addPolyline(new PolylineOptions()
                .clickable(true)
                .add(


                        //new lat lng
                     //     new LatLng(list.get(0), 7.197380),
                     //   new LatLng(list.get(1), 7.177380

                        new LatLng(latThread.get(i), lngThread.get(i)),
                        new LatLng(latThread.get(i+1), lngThread.get(i+1))

                ));
        //polyline
        polyline.setEndCap(new RoundCap());
        polyline.setWidth(POLYLINE_STROKE_WIDTH_PX);
        polyline.setColor(COLOR_BLACK_ARGB);
        polyline.setJointType(JointType.ROUND);


        //  new LatLng(list.get(2),7.157380),
        //  new LatLng(list.get(3),7.137380)

        //    object.setEndCap(new RoundCap());
        //  object.setWidth(POLYLINE_STROKE_WIDTH_PX1);
        polyline.setColor(COLOR_BLACK_ARGB);
 //       mHandler.postDelayed(mUpdateTimeTask, 10000);

    }

    //Marker marker = new Marker();
    // Add a marker in Sydney and move the camera
    LatLng sydney = new LatLng(latThread.get(0),lngThread.get(0));

    mMap.setMapType(GoogleMap.MAP_TYPE_HYBRID);
    mMap.addMarker(new MarkerOptions().position(sydney).title("Marker in Sydney"));

    mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney));

    //   mMap.setMaxZoomPreference(50);
    mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(sydney, 100.0f));

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...