2016-03-01 12 views
8

Ich lade ein Bild von mysql DB mit Picasso in die benutzerdefinierte Listenansicht. Das Bild wird geladen, wenn die URL direkt übergeben wird, aber wenn ich die URL einer Zeichenfolge zuweise und sie überlasse, wird eine Ausnahme ausgelöst, die besagt, dass Pfad nicht leer sein darf.java.lang.IllegalArgumentException: Der Pfad darf in Picasso nicht leer sein

String Image = md.Image; 

Bild Zeichenfolge enthält http://example.com/image.jpg

Ich bin vorbei in picasso wie unten.

Picasso.with(view.getContext()) 
.load(Image) 
.into(iview);               

Wenn ich übergeben, wie das i java.lang.IllegalArgumentException bin immer: Pfad darf nicht leer sein. Ich habe den obigen Schritt wie unten versucht, aber das Bild wird nicht geladen.

Picasso.with(view.getContext()) 
.load(new File(Image)) 
.into(iview); 

Was ist falsch an der obigen Deklaration?

+1

Nach dem Fehler Image ist leer ist nicht null. Sind Sie sicher, dass dies eine URL hat? – Rohit5k2

+0

Haben Sie dieses Problem gelöst? Ich glaube, keine der Antworten gibt die richtige Antwort –

+0

Versuchen Sie nicht, den Link zu öffnen. Es ist NSFW. –

Antwort

0

Ich glaube, Ihre md.Image gibt eine leere Zeichenfolge zurück. Also versuchen Sie direkt Ihr image url in picasso so:

Picasso.with(view.getContext()) 
.load(" http://xxx.xxx.com/images/New%20folder/Desert.jpg.") 
.into(iview); 

Hoffe, dass es funktioniert.

17

Ich hatte ähnliches Problem. Überprüfen Sie, ob Ihre URL-Zeichenfolge leer ist oder nicht. Wenn es leer ist, geben Sie das Standardbild ein oder laden Sie es von der URL. Hoffe das hilft.

if (image.isEmpty()) { 
    iview.setImageResource(R.drawable.placeholder); 
} else{ 
    Picasso.with(_c).load(image).into(iview); 
    } 
Verwandte Themen