你的位置:首页 > 操作系统

[操作系统]【代码笔记】显示图片的各种方式


代码:

复制代码
- (void)viewDidLoad{  [super viewDidLoad];  // Do any additional setup after loading the view.      UIImageView *img=[[UIImageView alloc]initWithFrame:CGRectMake(50, 100, 200, 200)];  img.backgroundColor=[UIColor redColor];  [self.view addSubview:img];      //从网络下载图片,保存,并用 UIImageView 从保存中显示  NSString * documentsDirectoryPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];  NSLog(@"保存路径:%@",documentsDirectoryPath);      //Get Image From URL  UIImage * imageFromURL = [self getImageFromURL:@"http://file.duteba.com/phone/2009/04/5/ftGxL8kcUL.jpg"];      //Save Image to Directory  [self saveImage:imageFromURL withFileName:@"MyImage" ofType:@"jpg" inDirectory:documentsDirectoryPath];      //Load Image From Directory  UIImage * imageFromWeb = [self loadImage:@"MyImage" ofType:@"jpg" inDirectory:documentsDirectoryPath];  [img setImage:imageFromWeb];      //取得目录下所有文件名  NSArray *file = [[[NSFileManager alloc] init] subpathsAtPath:documentsDirectoryPath];  NSLog(@"%lu",(unsigned long)[file count]);  NSLog(@"%@",file);  }//从网络下载图片-(UIImage *) getImageFromURL:(NSString *)fileURL {  NSLog(@"执行图片下载函数");  UIImage * result;    NSData * data = [NSData dataWithContentsOfURL:[NSURL URLWithString:fileURL]];  result = [UIImage imageWithData:data];    return result;}//将所下载的图片保存到本地-(void) saveImage:(UIImage *)image withFileName:(NSString *)imageName ofType:(NSString *)extension inDirectory:(NSString *)directoryPath {  if ([[extension lowercaseString] isEqualToString:@"png"]) {    [UIImagePNGRepresentation(image) writeToFile:[directoryPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.%@", imageName, @"png"]] options:NSAtomicWrite error:nil];  } else if ([[extension lowercaseString] isEqualToString:@"jpg"] || [[extension lowercaseString] isEqualToString:@"jpeg"]) {    [UIImageJPEGRepresentation(image, 1.0) writeToFile:[directoryPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.%@", imageName, @"jpg"]] options:NSAtomicWrite error:nil];  } else {    //ALog(@"Image Save Failed\nExtension: (%@) is not recognized, use (PNG/JPG)", extension);    NSLog(@"文件后缀不认识");  }}//读取本地保存的图片-(UIImage *) loadImage:(NSString *)fileName ofType:(NSString *)extension inDirectory:(NSString *)directoryPath {  UIImage * result = [UIImage imageWithContentsOfFile:[NSString stringWithFormat:@"%@/%@.%@", directoryPath, fileName, extension]];    return result;}- (void)didReceiveMemoryWarning{  [super didReceiveMemoryWarning];  // Dispose of any resources that can be recreated.}
复制代码

 

输出:

复制代码
2015-10-13 13:43:09.989 从网络下载图片,保存,并用 UIImageView 从保存中显示[7260:182365] 保存路径:/Users/chenlihua/Library/Developer/CoreSimulator/Devices/78D1FCBF-9990-471F-9075-168F2CE949FE/data/Containers/Data/Application/52E9DF04-CC22-4834-A3C5-2261A5061032/Documents2015-10-13 13:43:09.989 从网络下载图片,保存,并用 UIImageView 从保存中显示[7260:182365] 执行图片下载函数2015-10-13 13:43:10.231 从网络下载图片,保存,并用 UIImageView 从保存中显示[7260:182365] 02015-10-13 13:43:10.231 从网络下载图片,保存,并用 UIImageView 从保存中显示[7260:182365] ()
复制代码