站在巨人的肩膀我们会看见山后面的海
/*
图片一般存储在4个地方
1 相册中
2 应用程序包中,像app上面的一些ui图片直接放在工程里面
3 沙盒,可以读取沙盒路径读写和写入操作
4 因特网,我们通过url从网络上下载图片
*/
/*从应用程序里加载图片*/
/*系统会自动加载图片和缓存对与简单的程序和少量图片可以使用!大量图片应应该建立自己的缓存机制*/
UIImage *image = [UIImageimageNamed:@"image.jpg"];
/*从url加载图片*/
/* 这是一种同步的方法失败时不会有返回值而且没有内存的超时机制*/
+(UIImage *)imageFromURLString:(NSString *)urlString
{
NSURL *url = [NSURLURLWithString:urlString];
if (!url) {
returnnil;
}
return [UIImageimageWithData:[NSDatadataWithContentsOfURL:url]];
}
/* 从沙盒里获取图片*/
+(UIImage *)imageFromDocuments:(NSString *)imageName
{
NSArray *paths =NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *filePath = [[pathsobjectAtIndex:0]stringByAppendingPathComponent:[NSStringstringWithFormat:@"%@",imageName]]; //保存文件的名称
return [[UIImagealloc]initWithContentsOfFile:filePath];
}
-(NSString *)documentsFolder
{
return [NSHomeDirectory()stringByAppendingPathComponent:@"Documents"];
}
+(UIImage *)imageFromAppbag:(NSString *)imageName type:(NSString *)imageType
{
//通过路径加载图片
NSString *imagePath = [[NSBundlemainBundle ]pathForResource:imageNameofType:imageType];
return [UIImageimageWithContentsOfFile:imagePath];
}