8

我收到此错误,我不知道如何解决它..

WARNING: -[<AVCaptureVideoPreviewLayer: 0xad482c0> isOrientationSupported] is deprecated.  Please use AVCaptureConnection's -isVideoOrientationSupported

但是,当我查看苹果文档时,它说它是 Mac OS 功能.. 不是 IOS ......所以我有点困惑......期待得到一些答案.. 谢谢..

4

3 回答 3

26

一些示例代码也适用于 6.0 之前的版本:

if ([captureVideoPreviewLayer respondsToSelector:@selector(connection)])
{
    if ([captureVideoPreviewLayer.connection isVideoOrientationSupported])
    {
        [captureVideoPreviewLayer.connection setVideoOrientation:self.interfaceOrientation];
    }
}
else
{
    // Deprecated in 6.0; here for backward compatibility
    if ([captureVideoPreviewLayer isOrientationSupported])
    {
        [captureVideoPreviewLayer setOrientation:self.interfaceOrientation];
    }                
}
于 2012-10-01T16:15:06.080 回答
3

AVCaptureConnection也可用于 iOS此处。您可能查看了错误的文档。

于 2012-07-17T23:41:54.477 回答
1

上面回答的示例代码工作正常。但需要更换自己。interfaceOrientation 与 AVCaptureVideoOrientation。

编辑代码如下。

if ([captureVideoPreviewLayer.connection isVideoOrientationSupported])
{
    [captureVideoPreviewLayer.connection setVideoOrientation:AVCaptureVideoOrientationPortrait];
}

根据要求,方向将是纵向或横向。

欢迎编辑和建议。

于 2015-02-06T10:39:31.847 回答