Glide下载监听

来源:互联网 发布:淘宝设计美工的广告词 编辑:程序博客网 时间:2024/05/11 14:40


转载来自:http://blog.csdn.net/kpioneer123/article/details/51063470

1.简单监听

[java] view plain copy
  1. Glide  
  2.      .with( context ) // could be an issue!  
  3.      .load( )  
  4.      .asBitmap()  
  5.      .into( new SimpleTarget<Bitmap>() {    
  6.    @Override  
  7.    public void onResourceReady(Bitmap bitmap, GlideAnimation glideAnimation) {  
  8.        // do something with the bitmap  
  9.        // for demonstration purposes, let's just set it to an ImageView  
  10.        imageView1.setImageBitmap( bitmap );  
  11.    }  
  12.  );  

2.监听错误(第二种样式)

[java] view plain copy
  1. Glide.with(this)  
  2.       .load(url)  
  3.       .listener(new RequestListener() {  
  4.   
  5.   
  6. @Override  
  7. public boolean onException(Exception arg0, Object arg1,  
  8.         Target arg2, boolean arg3) {  
  9.     Toast.makeText(ExplosionsActivity.this,  
  10.             "网络连接失败,请确认网络连接后重试", Toast.LENGTH_SHORT).show();  
  11.     dialog.dismiss();  
  12.     return false;  
  13. }  
  14.   
  15. @Override  
  16. public boolean onResourceReady(Object arg0, Object arg1,  
  17.         Target arg2, boolean arg3, boolean arg4) {  
  18.     dialog.dismiss();  
  19.     btn_make_insurance_plan.setVisibility(View.VISIBLE);  
  20.     return false;  
  21. }  
  22.       })  
  23.       .into(<span style="font-family:Arial, Helvetica, sans-serif;">imgview</span>);  


3.详细过程监听(其中GlideDrawable可换成Bitmap)



[java] view plain copy
  1. Glide  
  2.    .with(ImageDetailFragment.this)  
  3.    .load(mImageUrl)  
  4.    .centerCrop()  
  5.    .placeholder(R.drawable.pubic_icon_headphoto)  
  6.    .crossFade()  
  7.    .into(new Target<GlideDrawable>() {  
  8.   
  9.   
  10.     @Override  
  11.     public void onResourceReady(GlideDrawable arg0,  
  12.             GlideAnimation<? super GlideDrawable> arg1) {  
  13.         // TODO Auto-generated method stub  
  14.       
  15.         mImageView.setImageDrawable(arg0);  
  16.         progressBar.setVisibility(View.GONE);  
  17.         mAttacher.update();  
  18.           
  19.     }  
  20.   
  21.     @Override  
  22.     public void onDestroy() {  
  23.         // TODO Auto-generated method stub  
  24.           
  25.     }  
  26.   
  27.     @Override  
  28.     public void onStart() {  
  29.         // TODO Auto-generated method stub  
  30.           
  31.     }  
  32.   
  33.     @Override  
  34.     public void onStop() {  
  35.         // TODO Auto-generated method stub  
  36.           
  37.     }  
  38.   
  39.     @Override  
  40.     public Request getRequest() {  
  41.         // TODO Auto-generated method stub  
  42.         return null;  
  43.     }  
  44.   
  45.     @Override  
  46.     public void getSize(SizeReadyCallback arg0) {  
  47.         // TODO Auto-generated method stub  
  48.           
  49.     }  
  50.   
  51.     @Override  
  52.     public void onLoadCleared(Drawable arg0) {  
  53.         // TODO Auto-generated method stub  
  54.           
  55.     }  
  56.   
  57.     @Override  
  58.     public void onLoadFailed(Exception arg0, Drawable arg1) {  
  59.         // TODO Auto-generated method stub  
  60.           
  61.           
  62.         Toast.makeText(getActivity(), arg0+"", Toast.LENGTH_SHORT).show();  
  63.         progressBar.setVisibility(View.GONE);  
  64.           
  65.     }  
  66.   
  67.     @Override  
  68.     public void onLoadStarted(Drawable arg0) {  
  69.         // TODO Auto-generated method stub  
  70.           
  71.     }  
  72.   
  73.     @Override  
  74.     public void setRequest(Request arg0) {  
  75.         // TODO Auto-generated method stub  
  76.           
  77.     }  
  78.     });  



    一般用第二种就可以了

0 0
原创粉丝点击