2014-07-22 11 views
14

Picasso'yu GridView ile kullanıyorum ve ağ üzerinden 200 resim yüklüyorum. Şu anda Picasso, görüntü ekranda görünmeye başlayana kadar ağ üzerinde bir görüntü yükü tetiklemiyor gibi görünüyor.Gelecek görüntüleri önceden almak için Picasso'yu kullanma

Picasso'nun listede sonraki N görüntülerini önceden getirmesi için bir yol var mı, böylece deneyim daha iyi olur? Görüntüleri Gridview'e koymak için bir Adaptör kullanıyorum.

+1

ben yerine Picasso'nun AndroidQuery denemek zorunda düşünüyorum. –

+1

@DaBeeeenster, Bill Mote'un doğru cevabını uyguladınız. Paylaşım için teşekkürler –

cevap

35

ben şöyle Picasso kullanarak çok başarılı bir önbelleğine görüntüleri ön yükleme ediyorum:

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

paylaşın. Burada makalenin ne olduğunu açıklayabilir misiniz? Daha fazla kodu –

+0

paylaşabilirsiniz Assume Makale, resim URL'leri olan ArrayList dizeleri içeren bazı POJO'dur. –

+1

Tamam. Bu kod sadece hafızadaki/DIsk'deki görüntüleri önbelleğe alacaktır. böylece önbelleğe alınmış görüntüleri benim liste görünümünde/Gridview'de nasıl görüntüleyeceğim? –