Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.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 UIImagePickerController在点击“后间歇性停止响应”;使用「;按钮_Iphone_Objective C_Uiimagepickercontroller - Fatal编程技术网

Iphone UIImagePickerController在点击“后间歇性停止响应”;使用「;按钮

Iphone UIImagePickerController在点击“后间歇性停止响应”;使用「;按钮,iphone,objective-c,uiimagepickercontroller,Iphone,Objective C,Uiimagepickercontroller,我有一个录制视频的应用程序。尽管使用UIImagePickerController的部分都是UIKit,但该应用程序是cocos2d和UIKit的混合 问题是: 拍摄视频后,当您点击“使用”按钮时,按钮将变为选定状态,然后什么也不会发生。“重拍”按钮被禁用。您仍然可以播放/暂停视频,但该视图从未关闭,并且从未调用-(void)imagePickerController:(UIImagePickerController*)picker完成PickingMediaWithInfo:(NSDictio

我有一个录制视频的应用程序。尽管使用UIImagePickerController的部分都是UIKit,但该应用程序是cocos2d和UIKit的混合

问题是: 拍摄视频后,当您点击“使用”按钮时,按钮将变为选定状态,然后什么也不会发生。“重拍”按钮被禁用。您仍然可以播放/暂停视频,但该视图从未关闭,并且从未调用
-(void)imagePickerController:(UIImagePickerController*)picker完成PickingMediaWithInfo:(NSDictionary*)info


问题发生在长时间和短时间(您是否在模拟器中测试应用程序?尝试在设备上测试它,看看它是否有相同的功能。我记得我遇到过类似的问题,无法在模拟器中使用选择器选择视频,因为应用程序将“卡住”在我按下使用按钮之后。

我会在代码中的其他地方查找,它是否在if语句中调用?您是否分配并初始化了调用-(void)imagePickerController:(UIImagePickerController*)picker完成了PickingMediaWithInfo:(NSDictionary*)信息的东西。这些只是我要查找的一些小东西,再加上调用NSLog()当你看到调用函数时,你会知道它被调用了,或者那里可能有错误。

我的问题的原因是在iOS 5中

[picker.parentViewController dismissModalViewControllerAnimated:YES]
不再工作-
parentViewController
为零。令人困惑的是,这会导致选择器视图“完成”,但不会被取消,它只是保持不活动状态

相反,您可以使用:

[picker.presentingViewController dismissModalViewControllerAnimated:YES]
但这在iOS 4中不起作用,因为没有
presentingViewController
消息

您可以编写一个类别,自动选择正确的类别,也可以保留对手动显示该类别的视图控制器的引用。例如,在我的案例中,代理也是显示该类别的视图控制器,因此我可以这样做

[self dismissModalViewControllerAnimated:YES]

在我的选择器中。

我在一个只有UIKit的应用程序中看到了相同的问题,但只在一个(iOS 5)设备上出现;另一个(iOS 4)可以正常工作。由于您的问题不太详细,并且只显示了一段代码,我将进行注释而不是回答。“偶尔”表示与线程(手动或自动)有关。我会尝试删除这一行
[tmpVC发行版];
。另一件事是,确保委托设置正确。查看
imagePickerController
并放置一个日志/断点。然后逐步了解调试过程中发生的情况。如果您想要更具体的答案,您需要更详细地回答您的问题。如果您可以共享该项目,这可能会有所帮助。
[self dismissModalViewControllerAnimated:YES]