主要看看AsyncTask如何使用:
MainActivity.java
加载图片的类:
ImageTask.java
-
public class ImageTask extends AsyncTask<String, Void, Bitmap> {
-
private ImageView iv;
-
public ImageTask(ImageView iv){
-
this.iv = iv;
-
}
-
@Override
-
protected Bitmap doInBackground(String... param) {
-
String imgUrl = param[0];
-
try {
-
URL url = new URL(imgUrl);
-
try {
-
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
-
InputStream in = conn.getInputStream();
-
Bitmap bitmap = BitmapFactory.decodeStream(in);
-
if(bitmap!=null){
-
return bitmap;
-
}
-
} catch (IOException e) {
-
-
e.printStackTrace();
-
}
-
} catch (MalformedURLException e) {
-
-
e.printStackTrace();
-
}
-
return null;
-
}
-
-
@Override
-
protected void onPostExecute(Bitmap result) {
-
super.onPostExecute(result);
-
if(result
!= null){
-
iv.setImageBitmap(result);
-
}
-
}
-
-
@Override
-
protected void onPreExecute() {
-
super.onPreExecute();
-
}
-
}
使用AsyncTask异步加载图片
原文:http://blog.csdn.net/shineflowers/article/details/41746443