AsyncTask 加载图片的工具类
来源:互联网 发布:循迹小车c语言程序 编辑:程序博客网 时间:2024/06/07 07:48
加载图片类:
public class GetImage extends AsyncTask<String, Integer, Bitmap> { private ImageView iv_net;// 图片 private ProgressBar pb_loading;// 加载圈 public GetImage(ImageView iv_net, ProgressBar pb_loading) { this.iv_net = iv_net; this.pb_loading = pb_loading; } @Override protected void onPreExecute() { super.onPreExecute(); pb_loading.setVisibility(View.VISIBLE);// 先将 loading 显示 } @Override protected Bitmap doInBackground(String... params) { String url = params[0];// 从参数中获取网络地址 Bitmap bitmap = null;// 从网络加载的图片 try { Thread.sleep(3000);// 以下是进行网络获取图片 URLConnection urlConnection = new URL(url).openConnection(); InputStream inputStream = urlConnection.getInputStream(); BufferedInputStream bufferedInputStream = new BufferedInputStream(inputStream); bitmap = BitmapFactory.decodeStream(bufferedInputStream); inputStream.close(); bufferedInputStream.close(); } catch (Exception e) { e.printStackTrace(); } return bitmap;// 将加载的图片返回 } @Override protected void onPostExecute(Bitmap bitmap) { super.onPostExecute(bitmap); pb_loading.setVisibility(View.GONE);// 将 loading 隐藏 iv_net.setImageBitmap(bitmap);// 界面上设置显示图片 }}
调用工具类:
new GetImage(iv_net,pb_loading).execute(imageUrl);
第一个参数是图片,第二个是进度条,第三个是图片的链接
后言:
发现没有具体的说明加载网络的的例子,所以写这个博客。
大神们,萌萌哒!
0 0