【问题标题】:iphone: UIImagePickerController how to get the thumbnail for the picker controliphone:UIImagePickerController 如何获取选取器控件的缩略图
【发布时间】:2023-03-13 19:38:01
【问题描述】:
您好,我需要使用 uiimagepickercontroller 从 IOS 3 中的照片库中获取照片。我设法获取原始图像和自定义编码以从原始图像生成缩略图。
有没有办法获取 UIImagePickerController 中使用的缩略图?我可以从原始图像生成缩略图,但它会减慢整个过程。当时,有没有办法保存原始图像的url。目前,我只是创建一个新图像并保存在一个临时文件夹中,供以后的应用程序上传服务器。这个过程太慢了,因为我需要生成缩略图以及创建原始图像。
【问题讨论】:
标签:
iphone
uiimagepickercontroller
thumbnails
【解决方案1】:
在 ios 3.0 中,它们不是直接获取缩略图的方法,您必须进行自定义编码才能获取缩略图。
从 4.0 版开始,我们有了 ALAssetsLibrary。
ALAssetsLibrary *assetslibrary = [self defaultAssetsLibrary];
ALAssetsLibraryAssetForURLResultBlock resultblock = ^(ALAsset *myasset){
CGImageRef thumbnailRef = [myasset thumbnail]; //gives thumbnail
}
[assetslibrary assetForURL:asseturl resultBlock:resultblock failureBlock:^(NSError *error) {
//handle error
}];
但上述方法的缺点是,如果使用拒绝访问库,那么您必须处理错误并再次使用自定义编码再次获取缩略图。
如果您发现任何更好的方法,请更新。