在UIImagePickerController中,是否可以获取UIImagePickerControllerMediaURL的NSURL值?

sat*_*ish 2 iphone

当用户从选择器控制器中选择一个图像时,我正在调用该委托:

(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
Run Code Online (Sandbox Code Playgroud)

在字典信息中,键的值UIImagePickerControllerMediaURLNULL.我在这里错过了什么吗?

Wil*_*ore 5

我知道这个问题非常古老,但我确实设法从最近的谷歌搜索中徘徊,所以我想我会想到实际上你的问题的答案,其他答案似乎都错过了.

您为UIImagePickerControllerMediaURL获取NULL,因为它仅在选择器中为Movie(kUTTypeMovie)媒体类型返回.如果您在创建默认选择器时没有指定其他媒体类型,那么文档似乎意味着您将无法获得它:

" UIImagePickerControllerMediaURL - 指定电影的文件系统URL. "

我可以确认它至少在我在iOS 6中为图像(而非电影)所做的快速测试中没有返回.

要访问返回的图像,您实际上可以在UIImagePickerControllerOriginalImage(如果不允许编辑,默认设置)或UIImagePickerControllerEditedImage的键下直接访问UIImage对象,如果在选择器中允许编辑.即使在选取器中进行了编辑,原始图像也始终可用.您可以像处理程序中的任何其他UIImage一样处理这些UIImage.