应用程序在相机快门上冻结



我正在使用iOS7开发一个应用程序。有时当我打开相机时,我会在iOS 6设备中遇到问题。它在相机快门上冻结。尽管我将ARC设置为YES。我不明白问题出在哪里?

我用了这个的代码

self.cameraUI = [[UIImagePickerController alloc] init];
self.cameraUI.sourceType = UIImagePickerControllerSourceTypeCamera;
self.cameraUI.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera];
self.cameraUI.cameraCaptureMode = UIImagePickerControllerCameraCaptureModePhoto;
self.cameraUI.navigationBarHidden = YES;
self.cameraUI.showsCameraControls = NO;
self.cameraUI.wantsFullScreenLayout = YES;
self.cameraUI.delegate = self;
[self.cameraView addSubview:self.cameraUI.view];

您不应该对UIImagePickerController的视图执行addSubview:。相反,建议呈现UIImagePickerController并实现其代理以获得所选图像。

从Apple文档"如何使用UIImagePickerController?"?,

呈现用户界面。在iPhone或iPod touch上,通过调用当前活动视图控制器的presentViewController:animated:completion:方法,将配置的图像拾取控制器作为新的视图控制器,以模式(全屏)执行此操作。

这就是你可以从你的控制器中呈现它的方式

[viewcontrollerObj presentViewController:self.cameraUI animated:YES completion:nil];

希望能有所帮助!

最新更新