0

我无法获取我的应用使用UIImagePickerController. 如果捕获了视频,则返回的字典对象didFinishPickingMediaWithInfo包含一个UIImagePickerControllerMediaURL指向视频文件的值。

如果我拍照,字典对象不包含UIImagePickerControllerMediaURL值或UIImagePickerControllerReferenceURL值。

谷歌搜索引发了不同的事情,我尝试过但没有成功,包括:

  • 将allowEditing设置为YES(也试过NO)
  • 在访问信息字典之前关闭模态图像选择器。
  • 将 .... 的 info objectForKey 转换MediaURLNSURL. 失败了nil
  • 将图像选择器上的 mediaTypes 设置为包含(NSString*) kUTTypeImage(NSString*) kUTTypeMovie

但是信息字典从不包含图像的 URL。有任何想法吗?

4

2 回答 2

2

如文档中所述,info是:

如果选择了图像,则包含原始图像和编辑图像的字典;或电影的文件系统 URL(如果选择了电影)。该词典还包含任何相关的编辑信息。

因此,如果选择了图像,您将不会获得 URL。您将图像作为 UIImage 获取。

// Get picked image from info dictionary

UIImage *image = info[UIImagePickerControllerOriginalImage];

[save the image]

于 2013-01-08T17:29:08.560 回答
2

与您的问题有关的一些额外信息:

UIImagePickerControllerReferenceURL仅当编辑图像时才设置该值。然后,此键保存原始图像的 URL。从文档中:

所选项目的原始版本的资产库 URL。在用户编辑选取的项目后——例如通过裁剪图像或修剪电影——URL 继续指向选取项目的原始版本。

于 2013-01-08T23:38:03.430 回答