gpt4 book ai didi

ios - 照片框架工作异常。

转载 作者:行者123 更新时间:2023-11-28 21:38:44 24 4
gpt4 key购买 nike

我正在使用照片框架从相机胶卷中选择照片。从网格中选择 Assets 后,我使用 PHImageManager 访问每个选定的图像,然后将这些图像存储在数组中以显示在我的 Collection View 中。

我正在使用这段代码来实现:-

-(void)extractFullSizeImagesFromAssets{

PHImageRequestOptions* options = [[PHImageRequestOptions alloc] init];
options.version = PHImageRequestOptionsVersionCurrent;
options.deliveryMode = PHImageRequestOptionsDeliveryModeHighQualityFormat;
options.resizeMode = PHImageRequestOptionsResizeModeExact;
options.networkAccessAllowed = TRUE;



for (int i = 0; i < self.assets.count; i++) {
PHAsset * asset = [self.assets objectAtIndex:i];
CGSize fullSizeImage = CGSizeMake(1000, (asset.pixelHeight / asset.pixelWidth) * 1000);


[[PHImageManager defaultManager] requestImageForAsset:asset
targetSize:fullSizeImage
contentMode:PHImageContentModeAspectFit
options:options
resultHandler:^(UIImage *image, NSDictionary *info){
// [self.arr_images addObject:image];
[_arr_fullSizeImages addObject:image];

}];

}
}

现在我的数组“arr_fullSizeImages”包含提取的图像,其随机顺序与我在拾取 Assets 时选择的方式不同。例如,如果我从相机胶卷中选择了 5 张图像,那么有时在相机胶卷中位于索引 3 的所选图像会保存在 arr_fullSizeImages 中的索引 5 中。我无法追踪此行为的原因。请确定错误的来源以及如何解决此错误。

谢谢。

最佳答案

这是预期的行为,因为 requestImageForAsset 默认异步执行。如果您想要同步行为(并且没有随机顺序),只需设置

options.synchronous = YES;

关于ios - 照片框架工作异常。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32908331/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com