2014-07-22 11 views
14

Sto usando Picasso con un GridView, caricando 200 immagini sulla rete. In questo momento sembra che Picasso non stia attivando un caricamento di immagini sulla rete finché l'immagine non inizia a comparire sullo schermo.Ottenere Picasso per pre-fetch immagini imminenti

C'è un modo per fare in modo che Picasso prelevi le successive N immagini nell'elenco in modo che l'esperienza sia migliore? Sto usando un adattatore per inserire le immagini in Gridview.

+1

Credo che bisogna provare AndroidQuery invece di Picasso. –

+1

@DaBeeeenster hai implementato la risposta corretta di Bill Mote. Si prega di condividere –

risposta

35

sto prefetching immagini in una cache molto successo utilizzando Picasso in questo modo:

if (BuildConfig.DEBUG) { 
    Picasso.with(getApplicationContext()).setIndicatorsEnabled(true); 
    Picasso.with(getApplicationContext()).setLoggingEnabled(true); 
} 
for (Article article : articleList) { 
    ArrayList<String> images = article.getImages(); 
    for (String url : images) { 
      if (!TextUtils.isEmpty(url)) { 
       Picasso.with(getApplicationContext()) 
        .load(url) 
        .resizeDimen(R.dimen.article_image_preview_width, R.dimen.article_image_preview_height) 
        .centerCrop() 
        .fetch(); 
      } 
    } 
} 
+0

grazie per la condivisione. Puoi spiegare qui cos'è l'articolo? puoi condividere più codice –

+0

Supponiamo che l'articolo sia solo un POJO che contiene un ArrayList di stringhe che sono URL di immagini. –

+1

OK. questo codice memorizzerà solo le immagini in memoria/DIsk. così come visualizzare le immagini memorizzate nella cache nella mia listview/Gridview? –