Witam , od kilku dni przeszukuje internety żeby znaleźć rozwiązanie swojego problemu ponieważ nie jestem specem w Javie. A więc próbuje w Google Maps APi dodać 2 search boxy które będą mi zmieniać słowo na lokalizacji( To mi się udało) , a następnie za pomocą funkcji distanceTo() będa pokazywały mi odległość pomiędzy tymi dwoma punktami.ale mam kilka problemów , amianowicie:

  • Nie pokazuje mi się drugi marker na mapie
  • Funkcja normalnie powinna liczyć ale nie wyświetla mi się na mapie trasa pomiędzy dwoma punktami
    Poniżej dodaje część kodu w której to wszystko ma się robić
    i jeśli jest taka możliwość to czy da się robić to wszystko za pomocą jednego buttona czy trzeba użyć dwóch ?.
public void onClick(View v)
    {
        EditText pierwszy_punkt = (EditText) findViewById(R.id.Punkt_A);
        String location = pierwszy_punkt.getText().toString();

        EditText drugi_punkt = (EditText) findViewById(R.id.Punkt_B);
        String secondLocation = drugi_punkt.getText().toString();

        List<Address> adressList = null;
        MarkerOptions no = new MarkerOptions();

        Geocoder geocoder = new Geocoder(this);
        try
        {
            adressList = geocoder.getFromLocationName(location, 5);
            adressList.addAll(geocoder.getFromLocationName(secondLocation, 5));

        } catch (IOException e)
        {
            e.printStackTrace();
        }

        switch (v.getId())
        {
            case R.id.SzukajBtn:
            {
                Address myAdress = adressList.get(0);
                LatLng latLng = new LatLng(myAdress.getLatitude(), myAdress.getLongitude());
                no.position(latLng);
                no.title("Szukane miejsce");
                mMap.addMarker(no);
                mMap.animateCamera(CameraUpdateFactory.newLatLng(latLng));
            }
            break;

            case R.id.WyznaczBtn:
                mMap.clear();
                LatLng firstLatLng = new LatLng(adressList.get(0).getLatitude(), adressList.get(0).getLongitude());
                LatLng secondLatLng = new LatLng(adressList.get(1).getLatitude(), adressList.get(1).getLongitude());

                MarkerOptions markerOptions = new MarkerOptions();
                markerOptions.position(new LatLng(end_latitude, end_longitude));
                markerOptions.title("Użyty");
                markerOptions.draggable(true);
                float wynik[] = new float[10];

                Location.distanceBetween(firstLatLng.latitude, firstLatLng.longitude, secondLatLng.latitude, secondLatLng.longitude, wynik);
                markerOptions.snippet("Odległość = " + wynik[0]);
                mMap.addMarker(markerOptions);
        }
    }