Autore Topic: come mettere marker personalizzati e non di default?  (Letto 649 volte)

Offline Sebastian

  • Utente junior
  • **
  • Post: 81
  • Respect: 0
    • Mostra profilo
come mettere marker personalizzati e non di default?
« il: 03 Novembre 2011, 13:48:18 CET »
0
Ciao a tutti!
Io ho 3 marker su una mappa ma vorrei far corrispondere ad ognuno un icona diversa decisa da me (e non quella di deafult che invece ora mette uguale per tutti).. qualcuno saprebbe dirmi come fare?

allego codice:
Codice (Java): [Seleziona]
public class MioOverlay extends ItemizedOverlay<OverlayItem> {
       
        /*
         * Insieme degli item da visualizzare
         */

        private List<OverlayItem> province = new LinkedList<OverlayItem>();
        /*
         * Riferimento all'icona da utilizzare come Marker
         */

        private Drawable defaultMarker;
       

        /**
         * @param defaultMarker
         */

        public MioOverlay(Drawable defaultMarker) {
                super(defaultMarker);
                this.defaultMarker=defaultMarker;
               
 
                // Aggiungiamo ciascuna provincia come OverlayItem
               
                province.add(new OverlayItem(new GeoPoint(45666667,12250000),"Treviso","TV"));
                province.add(new OverlayItem(new GeoPoint(45437500,12335833),"Venezia","VE"));
                province.add(new OverlayItem(new GeoPoint(45438158,10993742),"Verona","VR"));
                province.add(new OverlayItem(new GeoPoint(45550000,11550000),"Vicenza","VI"));
                populate();
        }
       
       

        @Override
        public void draw(Canvas canvas, MapView mapView, boolean shadow) {
                super.draw(canvas, mapView, shadow);
                boundCenterBottom(defaultMarker);              
        }



        /* (non-Javadoc)
         * @see com.google.android.maps.ItemizedOverlay#createItem(int)
         */

        @Override
        protected OverlayItem createItem(int i) {
                // Ritorniamo il riferimento all'i-esimo item
                return province.get(i);
        }

        /* (non-Javadoc)
         * @see com.google.android.maps.ItemizedOverlay#size()
         */

        @Override
        public int size() {
                // Numero di elementi
                return province.size();
        }
       
       

}

« Ultima modifica: 03 Novembre 2011, 13:50:58 CET da Sebastian »

Offline bobo78

  • Utente junior
  • **
  • Post: 55
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    nexus one
  • Sistema operativo:
    Win XP
Re:come mettere marker personalizzati e non di default?
« Risposta #1 il: 04 Novembre 2011, 14:21:18 CET »
0
Ciao Sebastian,
ma non basterebbe creare un itemized overlay diverso per ogni provincia a cui assegni un icona diversa? In pratica ogni volta che crei un overlay con la nuova provincia gli passi un drawable con l'icona diversa.

Offline Sebastian

  • Utente junior
  • **
  • Post: 81
  • Respect: 0
    • Mostra profilo
Re:come mettere marker personalizzati e non di default?
« Risposta #2 il: 16 Novembre 2011, 12:21:42 CET »
0
Ci provo e ti faccio sapere.. intanto grazie!