I Glide bin mit Bilder zu laden und ich hinzugefügt einen Zuhörer zu wissen, wann Ressource bereit ist, oder wenn ein Fehler jeglicher Art war:Glide Hörer funktioniert nicht
Glide.with(mContext)
.load(url)
.placeholder(R.drawable.glide_placeholder)
// use dontAnimate and not crossFade to avoid a bug with custom views
.dontAnimate()
.diskCacheStrategy(DiskCacheStrategy.ALL)
.listener(new RequestListener<String, GlideDrawable>() {
@Override
public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) {
// do something
return true;
}
@Override
public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
// do something
return true;
}
})
.into(mCustomImageView);
Die App nie innen läuft onResourceReady
oder onException
aber wenn ich den Hörer abnehmen und ohne einen Rückruf von dem Asynchron-Download lassen, läuft es richtig:
Glide.with(mContext)
.load(url)
.placeholder(R.drawable.glide_placeholder)
// use dontAnimate and not crossFade to avoid a bug with custom views
.dontAnimate()
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(mCustomImageView);
ich mit GlideDrawableImageViewTarget
auch versucht, anstatt Zuhörern Rückrufe zu empfangen, aber App läuft onLoadStarted
innen aber nie insid läuft e onLoadCleared
, onLoadFailed
und onResourceReady
.
Sie sagen, dass die Zuhörer OnException und onResourceReady Methoden aufgerufen werden nicht wahr? Die Rückgabe von true aus diesen Methoden verhindert, dass das Target aufgerufen wird, aber sie sollten immer für den Listener aufgerufen werden. –
Ich denke, Sie müssen 'submit' aufrufen, um es einzuleiten, um zu laden –