繁体   English   中英

如何在IOS 9上使用UIImagePicker结果URL和PHAsset从媒体库加载图像

[英]How can i load image from Media Library using UIImagePicker results URL and PHAsset on IOS 9

PHImageManager *manager = [PHImageManager defaultManager];
for (PHAsset *asset in result) {        
    [manager requestImageForAsset:asset
                       targetSize:PHImageManagerMaximumSize
                      contentMode:PHImageContentModeDefault
                          options:requestOptions
                    resultHandler:^void(UIImage *image, NSDictionary *info) {
                        _profileImageView.image = image;

                        //[images addObject:_profileImageView];
                    }];    
}

它对我不起作用

首先使requestoptions

self.requestOptions = [[PHImageRequestOptions alloc] init];
self.requestOptions.resizeMode   = PHImageRequestOptionsResizeModeExact;
self.requestOptions.deliveryMode = PHImageRequestOptionsDeliveryModeHighQualityFormat;

// this one is key
self.requestOptions.synchronous = true;

并且如果在填充PHAsset对象的数组中有多个资产,则添加以下代码:

self.assets = [NSMutableArray arrayWithArray:assets];
PHImageManager *manager = [PHImageManager defaultManager];
NSMutableArray *images = [NSMutableArray arrayWithCapacity:[assets count]];

// assets contains PHAsset objects.
 __block UIImage *ima;

for (PHAsset *asset in self.assets) {
// Do something with the asset

[manager requestImageForAsset:asset
                   targetSize:PHImageManagerMaximumSize
                  contentMode:PHImageContentModeDefault
                      options:self.requestOptions
                resultHandler:^void(UIImage *image, NSDictionary *info) {
                    ima = image;

                    [images addObject:ima];
                }];


}

现在images数组包含uiimage格式的所有图像。

希望这会有所帮助:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM