在Swift中禁止一个组件的自动旋转?

时间:2016-09-19 11:19:03

标签: ios swift auto-rotation

是否可以禁止Swift中一个组件的自动旋转?
我希望我的iPad可以旋转,但AVCaptureVideoPreviewLayer不应该旋转。 那么是否可以禁止该层的旋转?

1 个答案:

答案 0 :(得分:0)

不,你必须实现旋转回调并自己将图层旋转到屏幕之前的位置。

它看起来像这样

- (void)viewWillTransitionToSize:(CGSize)size 

withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator
{

[super viewWillTransitionToSize:size withTransitionCoordinator:coordinator];

    [coordinator animateAlongsideTransition:^(id<UIViewControllerTransitionCoordinatorContext> context)
     {

         UIInterfaceOrientation orientation = [[UIApplication sharedApplication] statusBarOrientation];

         if (orientation == UIInterfaceOrientationMaskPortrait || orientation == UIInterfaceOrientationPortrait) {
            /// rotate layer to old orientation

         }else{
             /// rotate layer to old orientation
         }

     } completion:^(id<UIViewControllerTransitionCoordinatorContext> context)
     {


     }];


}