Sto passando da Picasso a Glide. Tutto funziona bene, tranne che non riesco a trovare un metodo per ottenere una richiamata di errore. Voglio recuperare una bitmap, passarla e generare una palette Android da essa. Inoltre, mentre un erroreDrawable può essere fornito a una chiamata di caricamento, non verrà visualizzato in onResourceReady
quando si utilizza uno SimpleTarget
.Glide: onError Callback
In Picasso ho fatto in questo modo:
target = new Target() {
@Override
public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
//handle Bitmap, generate Palette etc.
}
@Override
public void onBitmapFailed(final Drawable errorDrawable) {
// use errorDrawable to generate Palette
}
@Override
public void onPrepareLoad(final Drawable placeHolderDrawable) {
}
};
int width = (int) DisplayUnitsConverter.dpToPx(this, 120);
int height = (int) DisplayUnitsConverter.dpToPx(this, 40);
Picasso.with(this).load(config.getPathToLogo()).resize(width, height).error(errorDrawableId).into(target);
Il mio codice glide si presenta così:
Glide.with(context)
.load(config.getPathToLogo())
.asBitmap()
.into(new SimpleTarget<Bitmap>(width, height) {
@Override
public void onResourceReady(Bitmap resource, GlideAnimation glideAnimation) {
//handle Bitmap, generate Palette etc.
}
});
Grazie.
Questa spiegazione dovrebbe diventare parte della sezione readme di default git perché "onLoadFailed" è una tale base gestione degli errori. Grazie! – carl
Non funziona per me. – Klevi01
Forse stai usando 4.0.0-RC0? Prova a 3.8.0 intead. – Clint