iOS UI 16 图片加载第三方 SDwebimage
2015-12-13 16:25
525 查看
//
// RootViewController.m
// UI - 16 图片加载
//
// Created by dllo on 15/11/30.
// Copyright (c) 2015年 dllo. All rights reserved.
//
#import "RootViewController.h"
#import "UIImageView+WebCache.h"
#warning 1 加入头文件
@interface
RootViewController ()
@property (nonatomic,
retain)UIImageView *imagev;
@end
@implementation RootViewController
- (void)dealloc
{
[_imagev
release];
[super dealloc];
}
- (void)viewDidLoad {
[super
viewDidLoad];
self.view.backgroundColor = [UIColor
whiteColor];
UIButton *but = [UIButton
buttonWithType:UIButtonTypeCustom];
but.frame = CGRectMake(50, 500, 80, 50);
but.backgroundColor = [UIColor
purpleColor];
[but setTitle:@"下载图片"
forState:UIControlStateNormal];
[but addTarget:self
action:@selector(butAct)
forControlEvents:UIControlEventTouchUpInside];
[self.view
addSubview:but];
#warning 2 创建UIImageView
self.imagev = [[UIImageView
alloc]initWithFrame:CGRectMake(100, 100, 300, 200)];
[self.view
addSubview:self.imagev];
[self.imagev
release];
#warning 3 打开buliding prease
选第二个 ,
选中sd的所有方法(不是的有3个),
点回车,
在弹出框内输入-fobjc-arc
回车 .
// NSString *urlstr = @"http://img4.duitang.com/uploads/item/201207/28/20120728105310_jvAjW.thumb.600_0.jpeg";
// NSURL *url = [NSURL URLWithString:urlstr];
// //sd_ webImage方法(第一次下载,以后从本地取)
// [self.imagev sd_setImageWithURL:url];
//使用自己的方法
// [imagev sd_setImageWithURLStr:@"http://img4.duitang.com/uploads/item/201207/28/20120728105310_jvAjW.thumb.600_0.jpeg"];
//图片下载前给了个假图片
// [self.imagev sd_setImageWithURL:url placeholderImage:[UIImage imageNamed:@"20.jpg"]];
//sd_ webImage
通过key值找,key就是我们的url,先从缓存找
//失败后重试
// 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,
// Do any additional setup after loading the view.
}
- (void)butAct
{
NSString *urlstr =
@"http://img4.duitang.com/uploads/item/201207/28/20120728105310_jvAjW.thumb.600_0.jpeg";
NSURL *url = [NSURL
URLWithString:urlstr];
//放个假图,
拼命加载
// [self.imagev sd_setImageWithURL:url placeholderImage:[UIImage imageNamed:@"20.jpg"]];
[self.imagev
sd_setImageWithURL:url placeholderImage:[UIImage
imageNamed:@"20.jpg"]
options: SDWebImageCacheMemoryOnly];
//缓存大小(图片)
[[SDWebImageManager
sharedManager].imageCache
calculateSizeWithCompletionBlock:^(NSUInteger fileCount,
NSUInteger totalSize) {
NSLog(@"缓存空间大小:%ld,总大小:%ld",fileCount,
totalSize);
}];
//清除内存缓存
[[SDWebImageManager
sharedManager].imageCache
clearMemory];
//清除磁盘缓存
[[SDWebImageManager
sharedManager].imageCache
clearDisk];
#warning 是clear不是clean
//ios7 以后还要加清除网络请求的缓存
[[NSURLCache
sharedURLCache] removeAllCachedResponses];
}
- (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
// RootViewController.m
// UI - 16 图片加载
//
// Created by dllo on 15/11/30.
// Copyright (c) 2015年 dllo. All rights reserved.
//
#import "RootViewController.h"
#import "UIImageView+WebCache.h"
#warning 1 加入头文件
@interface
RootViewController ()
@property (nonatomic,
retain)UIImageView *imagev;
@end
@implementation RootViewController
- (void)dealloc
{
[_imagev
release];
[super dealloc];
}
- (void)viewDidLoad {
[super
viewDidLoad];
self.view.backgroundColor = [UIColor
whiteColor];
UIButton *but = [UIButton
buttonWithType:UIButtonTypeCustom];
but.frame = CGRectMake(50, 500, 80, 50);
but.backgroundColor = [UIColor
purpleColor];
[but setTitle:@"下载图片"
forState:UIControlStateNormal];
[but addTarget:self
action:@selector(butAct)
forControlEvents:UIControlEventTouchUpInside];
[self.view
addSubview:but];
#warning 2 创建UIImageView
self.imagev = [[UIImageView
alloc]initWithFrame:CGRectMake(100, 100, 300, 200)];
[self.view
addSubview:self.imagev];
[self.imagev
release];
#warning 3 打开buliding prease
选第二个 ,
选中sd的所有方法(不是的有3个),
点回车,
在弹出框内输入-fobjc-arc
回车 .
// NSString *urlstr = @"http://img4.duitang.com/uploads/item/201207/28/20120728105310_jvAjW.thumb.600_0.jpeg";
// NSURL *url = [NSURL URLWithString:urlstr];
// //sd_ webImage方法(第一次下载,以后从本地取)
// [self.imagev sd_setImageWithURL:url];
//使用自己的方法
// [imagev sd_setImageWithURLStr:@"http://img4.duitang.com/uploads/item/201207/28/20120728105310_jvAjW.thumb.600_0.jpeg"];
//图片下载前给了个假图片
// [self.imagev sd_setImageWithURL:url placeholderImage:[UIImage imageNamed:@"20.jpg"]];
//sd_ webImage
通过key值找,key就是我们的url,先从缓存找
//失败后重试
// 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,
// Do any additional setup after loading the view.
}
- (void)butAct
{
NSString *urlstr =
@"http://img4.duitang.com/uploads/item/201207/28/20120728105310_jvAjW.thumb.600_0.jpeg";
NSURL *url = [NSURL
URLWithString:urlstr];
//放个假图,
拼命加载
// [self.imagev sd_setImageWithURL:url placeholderImage:[UIImage imageNamed:@"20.jpg"]];
[self.imagev
sd_setImageWithURL:url placeholderImage:[UIImage
imageNamed:@"20.jpg"]
options: SDWebImageCacheMemoryOnly];
//缓存大小(图片)
[[SDWebImageManager
sharedManager].imageCache
calculateSizeWithCompletionBlock:^(NSUInteger fileCount,
NSUInteger totalSize) {
NSLog(@"缓存空间大小:%ld,总大小:%ld",fileCount,
totalSize);
}];
//清除内存缓存
[[SDWebImageManager
sharedManager].imageCache
clearMemory];
//清除磁盘缓存
[[SDWebImageManager
sharedManager].imageCache
clearDisk];
#warning 是clear不是clean
//ios7 以后还要加清除网络请求的缓存
[[NSURLCache
sharedURLCache] removeAllCachedResponses];
}
- (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
相关文章推荐
- iOS UI 16 图片加载第三方 SDwebimage
- Paceman: required key missing from keyring 解决方案
- UITableViewCell 高度的自适应
- iOS UI 12 tabbarcontroller
- iOS UI 12 tabbarcontroller
- iOS UI 12 block传值
- iOS UI 12 block传值
- iOS UI 11 单例
- iOS UI 11 单例
- iOS UI 08 uitableview 自定义cell
- iOS UI 08 uitableview 自定义cell
- iOS UI 07 uitableviewi3
- iOS UI 07 uitableviewi3
- iOS UI 07 uitableviewi2
- iOS UI 07 uitableviewi2
- iOS UI 07 uitableview
- iOS UI 07 uitableview
- iOS UI 05 传值
- iOS UI 05 传值
- iOS UI 04 轨道和动画