Autore Topic: Recuperare coordinate correnti da ItemizedOverlay  (Letto 1174 volte)

Offline mr_totov

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Emulatore Android
Recuperare coordinate correnti da ItemizedOverlay
« il: 08 Marzo 2011, 15:34:45 CET »
0
Ciao a tutti.
Nella mia applicazione ho creato una activity che visualizza la classica MapView, implementata nel modo classico seguendo il tutorial Hello, MapView  | Android Developers, e che visualizza inoltre il punto che localizza il dispositivo, come indicato nel tutorial di JD [facile] Tutorial GPS e MapView - Android Developers Italia.
Il mio problema riguarda la creazione di una classe ItemizedOverlay, al quale applico alcuni punti di interesse, e di cui ho riscritto il metodo onTap.
Codice (Java): [Seleziona]
          String sourcelat = ??
          String sourcelon = ??
          String url = "[url=http://maps.google.com/maps?f=d&saddr="]Google Maps[/url] + sourcelat + "," + sourcelon + "&daddr=" + lat + "," + lon + " WA&hl=it";
          Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(url));  
          i.setComponent(new ComponentName("com.google.android.apps.maps", "com.google.android.maps.MapsActivity"));
          mContext.startActivity(i);
Quello che voglio fare è far partire l'applicazione Google Maps, impostando l'url in modo che mi venga presentato il percorso tra il punto di localizzazione corrente, e il punto di interesse sul quale l'utente ha "cliccato".
Per quanto riguarda il recupero delle coordinate del punto di interesse non ho problemi, ma come recuperare quelle del punto corrente, che sono trattate dentro la classe genitrice MapView?

Grazie in anticipo a tutti



Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +507
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:Recuperare coordinate correnti da ItemizedOverlay
« Risposta #1 il: 08 Marzo 2011, 15:40:05 CET »
0
Ti passa l'index dell'elemento selezionato, quindi lo puoi recuperare dal tuo array/list che li contiene.

Offline mr_totov

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Emulatore Android
Re:Recuperare coordinate correnti da ItemizedOverlay
« Risposta #2 il: 08 Marzo 2011, 16:06:03 CET »
0
Ciao a tutti.
Nella mia applicazione ho creato una activity che visualizza la classica MapView, implementata nel modo classico seguendo il tutorial Hello, MapView  | Android Developers, e che visualizza inoltre il punto che localizza il dispositivo, come indicato nel tutorial di JD [facile] Tutorial GPS e MapView - Android Developers Italia.
Il mio problema riguarda la creazione di una classe ItemizedOverlay, al quale applico alcuni punti di interesse, e di cui ho riscritto il metodo onTap.
Codice (Java): [Seleziona]
          String sourcelat = ??
          String sourcelon = ??
          String url = "[url=http://maps.google.com/maps?f=d&saddr="]Google Maps[/url] + sourcelat + "," + sourcelon + "&daddr=" + lat + "," + lon + " WA&hl=it";
          Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(url));  
          i.setComponent(new ComponentName("com.google.android.apps.maps", "com.google.android.maps.MapsActivity"));
          mContext.startActivity(i);
Quello che voglio fare è far partire l'applicazione Google Maps, impostando l'url in modo che mi venga presentato il percorso tra il punto di localizzazione corrente, e il punto di interesse sul quale l'utente ha "cliccato".
Per quanto riguarda il recupero delle coordinate del punto di interesse non ho problemi, ma come recuperare quelle del punto corrente, che sono trattate dentro la classe genitrice MapView?

Grazie in anticipo a tutti


Ti passa l'index dell'elemento selezionato, quindi lo puoi recuperare dal tuo array/list che li contiene.

Forse mi sono espresso un pò male: come dici tu, tramite l'index passatoa onTap() recupero le coordinate del punto segnato sulla mappa, che nel mio url sono "lat" e "lon" e fin lì a posto: il problema sta nel recuperare le coordinate del punto che localizza il dispositivo, che avevo trattato nella MapView con il LocationListener. Quelle coordinate vengono quindi elaborate nell'activity precedente, e non so come poterle recuperare dalla ItemizedOverlay...

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +507
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:Recuperare coordinate correnti da ItemizedOverlay
« Risposta #3 il: 08 Marzo 2011, 16:08:07 CET »
0
La posizione corrente la prendi con

Codice (Java): [Seleziona]
LocationManager lm = (LocationManager)act.getSystemService(Context.LOCATION_SERVICE);
Criteria crit = new Criteria();
crit.setAccuracy(Criteria.ACCURACY_FINE);
String provider = lm.getBestProvider(crit, true);
Location loc = lm.getLastKnownLocation(provider);

Offline mr_totov

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Emulatore Android
Re:Recuperare coordinate correnti da ItemizedOverlay
« Risposta #4 il: 08 Marzo 2011, 16:32:57 CET »
0
Perfetto. Ti ringrazio! ;-)