Stavo cercando di integrare la barra di avanzamento in ma app.but non riuscivo a tenere traccia del metodo di richiamata.la barra di avanzamento mostrava sempre.come nascondere quando l'immagine è alloggiata?non è possibile nascondere la barra di avanzamento dopo aver caricato l'immagine in Picasso?
holder.imageView = (ImageView) localView.findViewById(R.id.imageView1);
holder.progressBar = (ProgressBar) localView.findViewWithTag(R.id.progressBar1);
localView.setTag(holder);
url = getItem(paramInt);
Picasso.with(getApplicationContext())
.load(url)
.placeholder(R.drawable.ic_launcher)
.error(R.drawable.ic_launcher)
.fit()
.into(holder.imageView, new Callback() {
@Override
public void onSuccess() {
holder.imageView.setVisibility(View.VISIBLE);
holder.progressBar.setVisibility(View.INVISIBLE);
}
@Override
public void onError() {
holder.progressBar.setVisibility(View.VISIBLE);
holder.imageView.setVisibility(View.INVISIBLE);
}
});
Nota: Il param Callback è un riferimento forte e impedirà il tuo 'android.app.Activity' o' android.app.Fragment' dall'essere garbage collection. Se si utilizza questo metodo, si consiglia vivamente di richiamare una chiamata adiacente 'Picasso.cancelRequest (ImageView)' per evitare perdite temporanee. –
@Jabbar_Jigariyo come si chiama 'Picasso.cancelRequest (ImageView)' in un adattatore? non è riciclato manualmente da 'getView()' su 'BaseAdapter'? – chip
Avete notizie su questo argomento? hai avuto qualche problema di perdite ...? –