1

我无法理解设置 AVCaptureVideo 方向的内容。如果我使用:

captureVideoPreviewLayer.orientation = UIInterfaceOrientationLandscapeLeft;- 我收到一条警告,说此方法在 iOS 6.0 中已弃用。

所以我用这个:

[[captureVideoPreviewLayer connection]setVideoOrientation:AVCaptureVideoOrientationLandscapeLeft];- 在 iOS 6.0 中运行良好,但在 iOS < 6.0 中崩溃。

为了与尽可能多的 iOS 兼容,该怎么做?你认为这是一个干净的解决方案吗?

#define SYSTEM_VERSION_LESS_THAN(v)  ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedAscending)

if(SYSTEM_VERSION_LESS_THAN(@"6.0")){
    captureVideoPreviewLayer.orientation = UIInterfaceOrientationLandscapeLeft;
}
else{
    [[captureVideoPreviewLayer connection] setVideoOrientation:AVCaptureVideoOrientationLandscapeLeft];
}

提前致谢!

4

0 回答 0