2012-08-23 2 views
5

Il mio problema:
- Visualizzo una mappa all'interno di un popup e ho scaricato le tessere (sfondo grigio). - Se si rimpicciolisce o si ingrandisce, la mappa riempie l'intero spazio (non più sfondo grigio).GWT MAP 3.8 (API di Google) - onResize() necessario per nascondere lo "sfondo grigio"?

La mia domanda:
- Hai qualche idea sul mio problema (dovrei ridimensionare per nascondere lo "sfondo grigio")?
- Non so se dovrei chiamare onResize() all'interno del callback Runnable (il codice è sopra) o no?

voi Grazie,

Il mio codice attuale: (sto usando la javaxLoaderAPI)

// INGRESSO PUNTO

GoogleMap map; 
    @UiField LayoutPanel gmap; 

    public void AjaxLoader_MAP() { 

      AjaxLoaderOptions options = AjaxLoaderOptions.newInstance(); 

      options.setOtherParms("key=***&sensor=false&language=es"); 

      Runnable callback = new Runnable() { 
      public void run() { 
       gmap.onResize();   // Should I call onResize() here ? 
       map = GoogleMap.create(gmap.getElement());  
      }; 
      } 

      AjaxLoader.loadApi("maps", "3", callback, options); 
} 

risposta

1

può essere correlato al seguente post - GWT Google Map Api V3 - broken when changing it

Ho appena inviato una risposta a quella posizione senza risposta t pure. Credo che risponda e getti intuito anche su questo.

So che questo è un vecchio post, ma fammi sapere se aiuta!

0

Quando si chiama mapWidget.triggerResize(), è importante chiamarlo con un certo ritardo (Timer.schedule()) in modo che tutto il widget sia stato ripristinato e quindi la mappa venga ridimensionata.

questo è come mi innescare:

@Override 
protected void onReset() { 
    super.onReset(); 
    Timer timer = new Timer() { 
     @Override 
     public void run() { 
      triggerResize(); 
     } 
    }; 
    timer.schedule(100); 
} 

Senza timer, ero ancora ottenendo piastrelle grigie. Spero che qualcuno lo trovi ancora utile.