webentwicklung-frage-antwort-db.com.de

Wie lade ich eine Bitmap mit Picasso ohne Verwendung einer ImageView?

Mit ImageView kann ich den folgenden Code verwenden, um ein Bild mit Rückruf herunterzuladen

Picasso.with(activity).load(url).into(imageView, new Callback()
{
    @Override
    public void onSuccess() 
    {
        // do something
    }

    @Override
    public void onError() { }
);

Oder holen Sie sich einfach die Bitmap von dieser Picasso.with(activity).load(url).get();. Gibt es überhaupt einen Rückruf für das Herunterladen des Bildes? Wenn möglich, geben Sie bitte einen Beispielcode an. Prost!

30
EES

Sie können erstellen Sie einTarget und dann das Bitmap in der Targets-Rückrufmethode onBitmapLoaded(...) ändern. Hier ist, wie:

// make sure to set Target as strong reference
private Target loadtarget;

public void loadBitmap(String url) {

    if (loadtarget == null) loadtarget = new Target() {
        @Override
        public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
            // do something with the Bitmap
            handleLoadedBitmap(bitmap);
        }

        @Override
        public void onBitmapFailed() {

        }
    };

    Picasso.with(this).load(url).into(loadtarget);
}

public void handleLoadedBitmap(Bitmap b) {
    // do something here
}
45
Philipp Jahoda