相机预览未在横向中填充 iPad 屏幕

Posted

技术标签:

【中文标题】相机预览未在横向中填充 iPad 屏幕【英文标题】:Camera Preview not filling iPad screen in Landscape 【发布时间】:2013-01-30 15:55:49 【问题描述】:

我的应用仅适用于 iPad,仅支持横向视图。

我有一个 UIImagePickerController 来加载相机。 我使用以下代码进行设置:

m_Pickercontroller=[[UIImagePickerController alloc] init ];
m_Pickercontroller.sourceType = UIImagePickerControllerSourceTypeCamera;
m_Pickercontroller.cameraCaptureMode = UIImagePickerControllerCameraCaptureModePhoto;
m_Pickercontroller.cameraDevice = UIImagePickerControllerCameraDeviceRear;
m_Pickercontroller.showsCameraControls = YES;
m_Pickercontroller.navigationBarHidden = YES;
m_Pickercontroller.toolbarHidden = YES;
m_Pickercontroller.wantsFullScreenLayout = YES;
m_Pickercontroller.allowsEditing=NO;

它以[self presentViewController:m_Pickercontroller animated:YES completion:nil]; 呈现,我也尝试使用模态并得到相同的结果。

这仅在第一次打开视图时发生。如果您重新打开相机或重新拍照,它就会消失。

我还尝试在加载之前和之后设置 m_Pickercontroller 帧大小。

这是它的样子,黑色区域是空的,白色区域是相机预览。忽略白线覆盖,这是应用程序的一部分。

【问题讨论】:

【参考方案1】:

好的,所以这没有任何意义,但造成这种情况的是动画:是的

我改了[self presentViewController:m_Pickercontroller animated:YES completion:nil][self presentViewController:m_Pickercontroller animated:NO completion:nil]

这个问题已经解决了。显然,ios 在为视图设置动画后不会调整相机预览的大小。

【讨论】:

以上是关于相机预览未在横向中填充 iPad 屏幕的主要内容,如果未能解决你的问题,请参考以下文章

Android - 相机预览是横向的

Android - 相机预览是横向的

相机预览人像设置参数失败

Android:编码的相机预览帧总是横向的。如何旋转?

为啥我的相机预览显示水平而不是垂直?

iOS 8 UIImagePickerController 在横向模式下具有黑色预览