0

Ich erstelle eine CardView. Ich habe die Adapter erstellt und es funktioniert perfekt. Als ich die Bitmap für meine ImageView im CardView initialisieren, erhalte ich eine rote Linie und eine Fehlermeldung unter dieser Zeile:Einstellen eines Bildes in CardView mit URL

viewHolder.thumbnail.setImageBitmap(BitmapFactory.decodeStream(new URL(list.get(position).thumbnail).openConnection().getInputStream())); 

Die Nachricht Ich erhalte, ist dies:

error: unreported exception MalformedURLException; must be caught or declared to be thrown

ich gesucht durch andere Beiträge mit dem gleichen Fehler, aber ihre Auflösungen lösen mein Problem nicht. Ich habe versucht, in einer try und catch Klausel diese Zeilen setzen wie so:

try { 
    viewHolder.thumbnail.setImageBitmap(BitmapFactory.decodeStream(new URL(list.get(position).thumbnail).openConnection().getInputStream())); 
} catch (MalformedURLException e) { 
    e.printStackTrace(); 
} 

ich den gleichen Fehler. Die Aussage list.get(position).thumbnail ist vom Typ String. Warum erhalte ich diesen Fehler? Wie löse ich das Problem?

+2

Ich denke, Sie sollten von Drittanbietern für das Laden Bild. Ex: Glide, Picasso ... –

+0

Können Sie logcat URLs zeigen, erhalten von der Liste? –

+0

Die URLs, die ich bekomme, stammen von Bildern aus der Galerie. Sie haben lustige URLs und sahen so aus: '/ external/images/media/3666'. –

Antwort

0

Dies ist URI nicht URL. Wenn Sie es laden möchten, lesen Sie bitte die Antwort link.

Oder nutzen Intent Ansicht mit Gallary example

+0

Noch einmal, vielen Dank! Ihre Hilfe wurde sehr geschätzt! –

+0

^^ !. Bitte. Viel Glück ! –