miércoles, 4 de marzo de 2015

Como cargar una imagen de Internet en un ImageView desde android

Para cargar una imagen desde Internet no lo puedes hacer desde el hilo principal de tu actividad tienes que crear una clase nueva que extienda de AsyncTask Desde el hilo principal llamas a

new DownloadImageTask((ImageView) findViewById(R.id.imageView1)).execute("http://url/imagenDeseada.png");

Clase que se encarga de ejecutar la descarga en segundo plano

private class DownloadImageTask extends AsyncTask { 

ImageView bmImage; 

public DownloadImageTask(ImageView bmImage) { 
this.bmImage = bmImage; 
} 

protected Bitmap doInBackground(String... urls) { 
String urldisplay = urls[0]; 
Bitmap mIcon11 = null; 
try { 
InputStream in = new java.net.URL(urldisplay).openStream(); 
mIcon11 = BitmapFactory.decodeStream(in); 
} 
catch (Exception e) {
 Log.e("Error", e.getMessage()); e.printStackTrace(); 
} 
return mIcon11; 
} 
protected void onPostExecute(Bitmap result) { bmImage.setImageBitmap(result); } 

}

tambien hay que verificar que tengan los permisos necesarios en el AndroidMainfest



No hay comentarios:

Publicar un comentario