系统监听横竖屏的方法(General中开启横竖屏切换才会来这个方法)

1> 如何判断是否分屏
如果当前设备为iPad,并且出现了iPhone竖屏的展示样式说明正在分屏 - >判断当前应用的界面展示样式(SizeClass) - >如果SizeClass为width compact&height regular则说明正在分屏

2> 代码监听SizeClass
UIViewController和UIView类都遵守了“<UITraitEnvironment>”协议
该协议用于监听和获取SizeClass的情况

// 当SizeClass发生变化后调用(General中开启横竖屏切换才会来这个方法)
- (void)traitCollectionDidChange:(UITraitCollection *)previousTraitCollection{

    // 判断当前的SizeClass,如果为width compact&height regular 则说明正在分屏
    BOOL isTrait = (self.traitCollection.horizontalSizeClass == UIUserInterfaceSizeClassCompact) && (self.traitCollection.verticalSizeClass == UIUserInterfaceSizeClassRegular);

    if (isTrait) {
        // 正在分屏
        NSLog(@"正在分屏");

    }else {

        NSLog(@"没有分屏");
    }

}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容