PHAsset心得

iOS8下获取相册图片,苹果提供了photo.framework的框架,主要用到了PHAsset,PHFetchOptions,PHFetchResult,PHCachingImageManager这几个类。

1、添加框架

#import

2、获取图片索引

PHFetchOptions * fetchOptions = [[PHFetchOptions alloc] init];

PHFetchResult * fetchResult =[PHAsset fetchAssetsWithMediaType:PHAssetMediaTypeImage options:fetchOptions];

if ([fetchResult countOfAssetsWithMediaType:PHAssetMediaTypeImage]>0) {

_fetchResult =fetchResult;

}

_fetchResult为类的成员变量

3、遍历获取图片

[_fetchResult numerateObjectsUsingBlock:^(PHAsset *asset, NSUInteger idx, BOOL * _Nonnull stop){

[assetArray addObject:asset];

}];

assetArray为保存图片数组(包含图片的各类信息,如大小、创建时间、地点等)

4、取图片

PHCachingImageManager *imageManager = [[PHCachingImageManager alloc] init];

[imageManager requestImageForAsset:asset

targetSize:CGSizeMake(320, 320)

contentMode:PHImageContentModeAspectFit

options:nil

resultHandler:^(UIImage *result, NSDictionary *info) {

NSLog(@"width:%f height:%f",result.size.width,result.size.height);

}];

遍历assetArray可去所有图片。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容