OGeek|极客世界-中国程序员成长平台

标题: iOS 10 UIImagePickerController 黑屏 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 12:13
标题: iOS 10 UIImagePickerController 黑屏

我遇到了一个奇怪的问题....
在运行 iOS 10 的设备上,相机预览显示黑屏。
但在旧版本中它可以正常工作
我正在使用 UIImagePickerController

self.sourceType = UIImagePickerControllerSourceTypeCamera;

我的 info.plist 文件:

enter image description here

enter image description here

示例项目:https://github.com/arturdev/cameraTest



Best Answer-推荐答案


我用不同的方法解决了这个问题。

不要创建 UIImagePickerController 的子类,因为 Apple 不支持 UIImagePickerController 的子类。

重要

The UIImagePickerController class supports portrait mode only. This class is intended to be used as-is and does not support subclassing. The view hierarchy for this class is private and must not be modified, with one exception. You can assign a custom view to the cameraOverlayView property and use that view to present additional information or manage the interactions between the camera interface and your code.

这里是替代解决方案:

在 UIViewController 中添加这段代码

self.imagePickerController.sourceType = UIImagePickerControllerSourceTypeCamera;
self.imagePickerController.showsCameraControls = NO;
self.imagePickerController.delegate = self;

[self.view addSubview:self.imagePickerController.view];
[self addChildViewController:self.imagePickerController];
[self.imagePickerController didMoveToParentViewController:self];

在所有 iOS 版本和设备上都能正常工作。

关于iOS 10 UIImagePickerController 黑屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39741464/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4