2014-11-07 18 views
6

Sto usando Glide come mio imageloader e voglio che le immagini sbiadiscano in background. Il problema che sto avendo è che non si anima quando l'immagine è già stata mostrata.Glide non animando ImageView caricato dalla cache

int i = 0; 
int[] images = { 
     R.drawable.sunset1,R.drawable.sunset2,R.drawable.sunset3 
}; 

if(i < images.length - 1){ 
i++; 
}else{ 
i = 0; 
} 
Glide.with(MainActivity.this).load(images[i]).placeholder(imageView.getDrawable()).crossFade(1000).into(imageView); 
+0

Sembra che tu abbia già aperto un problema su GitHub, ma in caso contrario, consulta: https://github.com/bumptech/glide/issues/241 –

risposta

0

Sembra che si tratti del comportamento previsto per Glide. Se si guarda il codice sorgente per il metodo animate, c'è questo testo nel commento:

verrà eseguito solo se la risorsa è stato caricato in modo asincrono (cioè non era nella memoria cache)

Per aggirare il problema, è sufficiente utilizzare il metodo ImageView#startAnimation per animare l'immagine.