2010-12-11 15 views
0

Ich habe ein Problem mit der Einstellung eines ImageView-Bildes auf ein Bild, das von einer URL abgerufen wurde. Hier ist die Methode verwendet, um die URL in ein Auslosungs Objekt zu drehen:Null-Zeiger-Ausnahme beim Zeichnen eines Bildes

private Drawable LoadImage(String url){ 
      try 
      { 
       InputStream is = (InputStream) new URL(url).getContent(); 
       Drawable d = Drawable.createFromStream(is, "src"); 
       return d; 
      }catch (Exception e) { 
       System.out.println("Exc="+e); 
       return null; 
      } 
    } 

Hier wird der Code die Methode aufzurufen:

Drawable drawable = LoadImage("www.myurl.com/image.jpg"); 
imageView.setImageDrawable(drawable); //here is where I think it goes wrong 

Es gibt mir ein Null-Zeiger-Ausnahme, aber wenn ich zeigen die ziehbar .ToString() Variable in einer Textansicht bekomme ich so etwas wie dieses:

[email protected] 

So zeigt es, es ist nicht null zurückkehrt und schlägt fehl, wenn es versucht, es zu zeichnen. Fehle ich etwas im Manifest oder stimmt etwas mit meinem Code nicht?

+2

ist 'imageView' null? – Patrick

+0

Nein, es wird anfänglich mit einem Bild aus den Ressourcen festgelegt. – SamRowley

+0

Können Sie den kompletten StackTrace bitte einfügen? – WarrenFaith

Antwort

1

Zunächst einmal ... Verwenden Sie System.out nicht auf Android. Verwenden Sie stattdessen Log.

Ich nehme an, Ihre LoadImage-Funktion gibt null zurück.

Werfen Sie einen Blick auf die Dokumentation über ddms und logcat und versuchen Sie dann, weitere Informationen darüber zu erhalten, was passiert.

Verwandte Themen