跳过UIImagePickerController预览视图?

11

我正在使用UIImagePickerController允许用户从资产库中选择视频。

当UIImagePickerController最初显示时,它会显示已录制的各种电影的缩略图。

一旦用户选择了电影,它就会显示一个“预览”视图,允许他们回放并可能编辑所选的电影。

有没有办法避免显示这个视图,而是返回在缩略图屏幕上选择的电影?

这是我正在使用的代码:

UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
imagePicker.delegate = self;
imagePicker.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeMovie];
imagePicker.allowsEditing = NO;

[self presentModalViewController:imagePicker animated:YES];

还没有找到解决方案。有人有什么想法吗? - Avalanchis
2
你有没有得到任何答案?我也想做同样的事情。 - Z S
有人得到了正确的解决方案吗? - hamedazhar
2个回答

5
我自己还没有测试过这个功能,但我很快会在自己的应用程序中尝试。如果您查看UIImagePickerController showsCameraControls文档,它提到了一个事实,即如果您消除相机控件,您可以拍摄任意多张照片。
因此,理论上,如果您将showsCameraControls设置为NO,并分配自己的cameraOverlayView UIView来让用户拍照,您可以在不显示预览视图的情况下关闭图像选择器。

2
我已经在自己的项目上进行了测试,可以证实这确实有效。我使用自己的自定义控件拍照,相机发出标准的“咔嚓”声,但没有快门图像出现,也没有预览显示。 - Michael Nachbaur
6
这并没有回答所提出的问题。问题是关于选择视频,而不是拍摄视频。另外,如果sourceType是.PhotoLibrary,并将showsCameraControls设置为false会导致异常。 - HHK

0
也许这可以帮助你。你可以使用NSNotificationCenter监听@"_UIImagePickerControllerUserDidCaptureItem"事件。如果用户选择了该项,你可以关闭imagePicker并进行缩略图处理。
我曾经遇到过类似的问题,需要在预览视图上移除一个覆盖层,我用了这种方法解决了它。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接