Gibt es eine Möglichkeit, auf Ereignisse von Picasso zu warten, wenn Sie den Builder verwenden, wie:
Picasso.with(getContext()).load(url).into(imageView);
Ich versuche anzurufen requestLayout()
und invalidate()
das übergeordnete GridView
Element anzurufen, damit die Größe ordnungsgemäß geändert wird, aber ich weiß nicht, wie ich einen Listener oder Rückruf festlegen soll.
Ich sehe, dass Picasso Fehlerereignisberichte hat, aber gibt es ein Erfolgsereignis?
.error(R.drawable.error_placeholder_image)
, um Fehlerbild einzustellenWenn Sie auf die Bitmap zugreifen müssen, bevor sie in die Ansicht geladen wird, versuchen Sie Folgendes:
In der aufrufenden Methode:
Idealerweise implementieren Sie Target direkt in einer Ansicht oder einem Ansichtsinhaberobjekt.
Hoffe das hilft
quelle
Wenn Sie die Folgefrage @Jas als Kommentar zur Antwort von MrEngineer13 beantworten (da ich nicht genug Ruf habe, um eine Antwort zu kommentieren), sollten Sie die
error()
Methode verwenden, bevor Sie dieCallback
at-into()
Methode registrieren , zum Beispiel:quelle
Square hat kürzlich die Zielklasse aktualisiert und jetzt gibt es mehr Methoden zum Überschreiben (
onPrepareLoad
undonBitmapFailed
):Und Sie müssen noch verwenden:
quelle
quelle
Versuche dies
quelle
Als Ergänzung zu anderen Antworten, falls Sie nicht wissen, wo Sie die Originalbildansicht verwenden sollen, z
ImageView myIV
.Original:
Neu (innerhalb
onBitmapLoaded()
vonnew Target()
):quelle