SDimage

//
//  MainViewController.m
//  SDText
//
//  Created by lanou on 15/10/14.
//  Copyright (c) 2015 蓝鸥科技 . All rights reserved.
//

#import "MainViewController.h"
#import
"UIImageView+WebCache.h"

@interface MainViewController ()
@property ( weak , nonatomic ) IBOutlet UIImageView *imageView;
@property ( weak , nonatomic ) IBOutlet UIButton *downloadButton;
@property ( weak , nonatomic ) IBOutlet UIButton *clearButton;
@property ( weak , nonatomic ) IBOutlet UIButton *reloadButton;
@property ( weak , nonatomic ) IBOutlet UIView *testView;

@end

@implementation MainViewController

- (
void )viewDidLoad {
    [
super viewDidLoad ];
   
// Do any additional setup after loading the view.
   
NSString *sandBoxPath = NSHomeDirectory ();
   
NSLog ( @"\n%@" ,sandBoxPath);
 
}
- (
IBAction )handleDownloadButtonAction:( UIButton *)sender {
   
   
NSURL *imageURL = [ NSURL URLWithString : IMAGE_URL ];
   
UIImage *placeholderImage = [ UIImage imageNamed : @"image" ];
   
//1. 通过 URL 设置图片
   
//    [self.imageView sd_setImageWithURL:imageURL];
   
   
//2. 图片设置完成后 , 执行 Block 函数中的的代码块
//    [self.imageView sd_setImageWithURL:imageURL completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) {
//        self.downloadButton.backgroundColor = [UIColor orangeColor];
//    }];
   
   
//    //3. 图片加载完成之前设置一个默认显示图片
//    [self.imageView sd_setImageWithURL:imageURL placeholderImage:placeholderImage];
   
//    4. 图片加载完成显示默认图 , 完成后执行执行 Block 函数中的的代码块
//    [self.imageView sd_setImageWithURL:imageURL placeholderImage:placeholderImage completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) {
//         self.downloadButton.backgroundColor = [UIColor orangeColor];
//        }];
   
//5. 设置图片的加载方式
//    [self.imageView sd_setImageWithURL:imageURL placeholderImage:placeholderImage options:SDWebImageProgressiveDownload];
   
/*
     //
失败后重试
     SDWebImageRetryFailed = 1 << 0,
     //UI
交互期间开始下载,导致延迟下载比如 UIScrollView 减速。
     SDWebImageLowPriority = 1 << 1,
     //
只进行内存缓存
     SDWebImageCacheMemoryOnly = 1 << 2,
     //
这个标志可以渐进式下载 , 显示的图像是逐步在下载
     SDWebImageProgressiveDownload = 1 << 3,
     //
刷新缓存
     SDWebImageRefreshCached = 1 << 4,
     //
后台下载
     SDWebImageContinueInBackground = 1 << 5,
     //NSMutableURLRequest.HTTPShouldHandleCookies = YES;
     SDWebImageHandleCookies = 1 << 6,
     //
允许使用无效的 SSL 证书
     //SDWebImageAllowInvalidSSLCertificates = 1 << 7,
     //
优先下载
     SDWebImageHighPriority = 1 << 8,
     //
延迟占位符
     SDWebImageDelayPlaceholder = 1 << 9,
     //
改变动画形象
     SDWebImageTransformAnimatedImage = 1 << 10,
     */

}
- (
IBAction )handleClearButtonAction:( UIButton *)sender {
   
self . imageView . image = nil ;
   
SDImageCache *imageCache = [ SDImageCache sharedImageCache ];
    [imageCache
clearMemory ];
    [imageCache
clearDisk ];
}
- (
IBAction )handleReloadButtonAction:( UIButton *)sender {
   
self . imageView . image = [ UIImage imageNamed : @"image" ];
    [
self handleDownloadButtonAction : self . downloadButton ];
}

- (
IBAction )handleExecuteButtonAction:( UIButton *)sender {
   
SDWebImageManager *manager = [ SDWebImageManager sharedManager ];
    [manager
downloadImageWithURL :[ NSURL URLWithString : IMAGE_URL ] options : SDWebImageRetryFailed progress :^( NSInteger receivedSize, NSInteger expectedSize) {
       
        [
UIView animateWithDuration : 1 animations :^{
           
self . testView . frame = CGRectMake ( 7 , 28 , 359 , 49 );
        }];
       
    }
completed :^( UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished, NSURL *imageURL) {
       
self . imageView . image = image;
    }];
}


- (
void )didReceiveMemoryWarning {
    [
super didReceiveMemoryWarning ];
   
// Dispose of any resources that can be recreated.
}

/*
#pragma mark - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    // Get the new view controller using [segue destinationViewController].
    // Pass the selected object to the new view controller.
}
*/


@end

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值