Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iPhone VoiceOver辅助功能设置导致视频录制崩溃_Iphone_Objective C_Uiimagepickercontroller - Fatal编程技术网

iPhone VoiceOver辅助功能设置导致视频录制崩溃

iPhone VoiceOver辅助功能设置导致视频录制崩溃,iphone,objective-c,uiimagepickercontroller,Iphone,Objective C,Uiimagepickercontroller,我终于找到了一个在录制视频时导致UIImagePickerController崩溃的bug。当iPhone的VoiceOver辅助功能设置启用时,在调用presentModalViewController时,录音机会自动崩溃 到目前为止,我还没有找到解决办法。是否有其他人经历过这种情况并能够修复它?正如上面的评论中提到的@kamens,解决方法是在显示模式视图控制器时,在完成块中包括camera.showsCameraControls=NO,如下所示: [controller presentVi

我终于找到了一个在录制视频时导致UIImagePickerController崩溃的bug。当iPhone的VoiceOver辅助功能设置启用时,在调用presentModalViewController时,录音机会自动崩溃


到目前为止,我还没有找到解决办法。是否有其他人经历过这种情况并能够修复它?

正如上面的评论中提到的@kamens,解决方法是在显示模式视图控制器时,在完成块中包括
camera.showsCameraControls=NO
,如下所示:

[controller presentViewController:self animated:YES completion:^{self.showsCameraControls = NO;}];
但是,使用此解决方案,当相机出现时,相机会瞬间控制闪光灯,然后闪光灯消失。显然,当控件确实需要隐藏时,这并不理想。另一种解决方法是设置
camera.showsCameraControls=OFF
。。。更不理想


@quellish,这是崩溃的结果:

*** -[PLCameraToggleButton setAccessibilityValue:]: message sent to deallocated instance 0x4a330b0
@kamens,这是我用来设置
mediaTypes
captureMode
的代码:

tmpCamera.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeMovie];
tmpCamera.cameraCaptureMode = UIImagePickerControllerCameraCaptureModeVideo;

正如@james提到的,在iOS 5.1中,当:

  • 使用
    picker.showsCameraControls=NO
  • 在调用
    [viewController presentViewController:picker animated:YES completion:nil]时使用
    animated:NO
  • VoiceOver辅助功能选项已启用
…而且,重要的是,当仅将电影指定为picker接受的媒体类型时:

  • picker.mediaTypes=[NSArray arrayWithObject:(NSString*)kUTTypeMovie]

但是,我通过将上述mediaTypes行更改为:

picker.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:picker.sourceType];
…如果默认的摄影机控件是隐藏的,并且我可以通过编程控制是开始录制视频还是拍照,那么这样做很好


我不知道这次崩溃的原因。

什么操作系统版本?哪些操作系统版本中没有它?您是否考虑过提交错误报告?我也遇到过同样的问题,但只有当ShowScameraControl设置为NO时。您的iOS开发人员帐户确实发生了两起技术支持事件。这听起来确实是个好时机。如果有解决办法,苹果公司的人就会知道。@james两个问题:当你展示modalviewcontroller时,你使用的是动画:否还是动画:是?还有,你在用showsCameraControls=NO吗?@kamens,我在用
动画:YES
showCameraControls=NO
太棒了!花了整整一天的时间,我找到了你的答案。非常感谢,这对我很有效!