相关疑难解决方法(0)

如何让UIImagePicker相机的自定义叠加在iOS 7中全屏显示?

我对使用UIImagePickerController整个屏幕的摄像机控件的自定义叠加感兴趣,非常类似于切换到视频功能时默认的摄像头应用程序所做的操作.

关于这个主题,我在这里引用了几个问题,尤其是这个问题,以及关于如何为UIImagePickerController使用自定义叠加层的Apple示例,但是它们都没有能够产生成功的全屏结果IOS 7.

到目前为止,这是相机UI与自定义叠加层(没有任何按钮)的样子:

在此输入图像描述

请注意,屏幕底部有一个黑条.我注意到如果我将其更改为1,我可以删除黑条cameraAspectRatio,但是这会使相机变焦,因为它具有非常放大的视图.有没有办法让全屏没有太多扭曲变焦(我明白一点点是必要的),还删除黑条?

这是我配置自定义叠加层的代码:

{
        self.imagePickerController.showsCameraControls = NO;

        [[NSBundle mainBundle] loadNibNamed:@"overlayView" owner:self options:nil];
        self.overlayView.frame = self.imagePickerController.cameraOverlayView.frame;
        self.imagePickerController.cameraOverlayView = self.overlayView;
        self.overlayView = nil;

        // Device's screen size (ignoring rotation intentionally):
        CGSize screenSize = [[UIScreen mainScreen] bounds].size;


        float cameraAspectRatio = 4.0 / 3.0; //! Note: 4.0 and 4.0 works
        float imageWidth = floorf(screenSize.width * cameraAspectRatio);
        float scale = ceilf((screenSize.height / imageWidth) * 10.0) / 10.0;

        self.imagePickerController.cameraViewTransform = CGAffineTransformMakeScale(scale, scale);

    } …
Run Code Online (Sandbox Code Playgroud)

iphone uiimagepickercontroller ios ios7

15
推荐指数
2
解决办法
3万
查看次数

标签 统计

ios ×1

ios7 ×1

iphone ×1

uiimagepickercontroller ×1