gpt4 book ai didi

objective-c - 如何从 UIImagePickerController 引用 URL 获取数据?

转载 作者:太空狗 更新时间:2023-10-30 03:24:49 25 4
gpt4 key购买 nike

我正在使用 ELCImagePickerController在我的应用程序中,我不想将选定的 fullScreenImage 保存到我的数组中,因为如果我选择了 40 张 iPad 图像,那就不好了。

我想从 UIImagePickerControllerReferenceURL 而不是 UIImagePickerControllerOriginalImage 从方法 的字典中获取数据 - (void)elcImagePickerController:(ELCImagePickerController *)picker didFinishPickingMediaWithInfo:(NSArray *)信息

我试过:

NSDictionary *dict = [info objectAtIndex:count];            

NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@",[dict objectForKey:@"UIImagePickerControllerReferenceURL"]]]];//UIImagePNGRepresentation([UIImage imageWithContentsOfFile:[NSString stringWithFormat:@"%@",[dict objectForKey:@"UIImagePickerControllerReferenceURL"]]] );
NSLog(@"length %d",[data length]);
imageview.image = [UIImage imageWithData:data];

但是,每次我得到 0 个字节。我已经尝试了论坛中所有可用的答案,但没有用。

谁能回答这个问题?

最佳答案

UIImagePickerControllerReferenceURL 返回 NSURL 对象而不是字符串对象。请将您的代码更改为 -

NSData *data = [NSData dataWithContentsOfURL:[dict objectForKey:@"UIImagePickerControllerReferenceURL"]];
NSLog(@"length %d",[data length]);
imageview.image = [UIImage imageWithData:data];

UIImagePickerControllerReferenceURL 返回 Assets LibraryNSURL 对象,因此您可以将图像获取为 -

ALAssetsLibrary *assetLibrary=[[ALAssetsLibrary alloc] init];
[assetLibrary assetForURL:[[self.imagedata objectAtIndex:i] valueForKey:UIImagePickerControllerReferenceURL] resultBlock:^(ALAsset *asset) {
ALAssetRepresentation *rep = [asset defaultRepresentation];
Byte *buffer = (Byte*)malloc(rep.size);
NSUInteger buffered = [rep getBytes:buffer fromOffset:0.0 length:rep.size error:nil];
NSData *data = [NSData dataWithBytesNoCopy:buffer length:buffered freeWhenDone:YES];//this is NSData may be what you want
[data writeToFile:photoFile atomically:YES];//you can save image later
} failureBlock:^(NSError *err) {
NSLog(@"Error: %@",[err localizedDescription]);
}];

注意:ALAssetsLibrary 在 iOS 9 中已弃用。

关于objective-c - 如何从 UIImagePickerController 引用 URL 获取数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10799605/

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