//获取所有资源的集合,并按资源的创建时间排序
PHFetchOptions*options = [[PHFetchOptions alloc]init];
options.sortDescriptors=@[[NSSortDescriptor sortDescriptorWithKey:@"creationDate"ascending:NO]];
PHFetchResult*assetsFetchResults = [PHAssetfetchAssetsWithOptions:options];
这里取得的结果 assetsFetchResults 其实可以当做一个数组。
当我们开发中遇到某些需求时,如获取用户最新拍摄的照片,既可以利用这个结果。
例如:获取最新一张照片
[assetsFetchResults firstObject]];
依次类推。
此时从这个结果取出来的元素是PHAsset,那么问题来了,如何将PHAsset转成UIImage呢?
调用以下代码即可:
PHImageRequestOptions*options = [[PHImageRequestOptions alloc]init];
options.deliveryMode=PHImageRequestOptionsDeliveryModeHighQualityFormat;
[[PHImageManagerdefaultManager]requestImageForAsset:asset targetSize:[UIScreenmainScreen].bounds.sizecontentMode:PHImageContentModeAspectFitoptions:optionsresultHandler:^(UIImage*result,NSDictionary*info) {
//result 就是转换结果
}];
网友评论