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