欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

关于 iPad 转屏的问题

程序员文章站 2022-04-27 08:08:07
...

关于 iOS 转屏的问题

之前做过 iPad 项目的开发,在项目使用到转屏的情况很多,使用的主要方法如下:

- (void)viewDidLoad {
    [super viewDidLoad];
    self.isPortrait = UIInterfaceOrientationIsPortrait(self.interfaceOrientation);
}

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
    [super willRotateToInterfaceOrientation:toInterfaceOrientation duration:duration];
    self.isPortrait = UIInterfaceOrientationIsPortrait(toInterfaceOrientation);
    [self relayoutWhenRotare];
}

当然, 你也可以使用通知

//旋转屏幕通知
[[NSNotificationCenter defaultCenter] addObserver:self
                                      selector:@selector(onDeviceOrientationChange)
                                                 name:UIDeviceOrientationDidChangeNotification object:nil];

/**
 *  旋转屏幕通知
 */
- (void)onDeviceOrientationChange{
    UIDeviceOrientation orientation = [UIDevice currentDevice].orientation;
    UIInterfaceOrientation interfaceOrientation = (UIInterfaceOrientation)orientation;
    switch (interfaceOrientation) {
        case UIInterfaceOrientationPortraitUpsideDown:{
            NSLog(@"第3个旋转方向---电池栏在下");
        }
            break;
        case UIInterfaceOrientationPortrait:{
            NSLog(@"第0个旋转方向---电池栏在上");
        }
            break;
        case UIInterfaceOrientationLandscapeLeft:{
            NSLog(@"第2个旋转方向---电池栏在左");
        }
            break;
        case UIInterfaceOrientationLandscapeRight:{
            NSLog(@"第1个旋转方向---电池栏在右");
        }
            break;
        default:
            break;
    }
}

不要忘记在项目中做配置如下

关于 iPad 转屏的问题


相关标签: ios ipad 转屏