0
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)img editingInfo:(NSDictionary *)editInfo {
[self dismissViewControllerAnimated:YES completion:nil];
NSURL *kittenFileURL = [[NSBundle mainBundle] URLForResource:img withExtension:nil];
}

这是我的代码。警告我得到它不兼容的指针类型将'UIImage *__strong'发送到'NSString *'类型的参数当我去收集要上传到保管箱的用户图像的url时,它会使应用程序崩溃。有任何想法吗?

4

1 回答 1

1

URLForResource:在传递图像时需要一个字符串。这就是错误。你需要在那里传递一个字符串。

[[NSBundle mainBundle] URLForResource:stringPath withExtension:nil];

不确定您打算如何处理,但URLForResource:param 需要一个路径或文件名,而不是UIImage. 有关更多详细信息,请查看此处的苹果文档。

只是猜测,您是否想获取该图像的媒体网址。在这种情况下,您需要这样做,

NSURL *kittenFileURL = [editInfo valueForKey:UIImagePickerControllerMediaURL];

此处列出了可用的密钥。. 对于参考URL,您可以使用,[editInfo valueForKey:UIImagePickerControllerReferenceURL]

附带说明, imagePickerController:didFinishPickingImage:editingInfo:已弃用,您应该使用imagePickerController:didFinishPickingMediaWithInfo:.

于 2012-12-07T06:44:58.963 回答