美文网首页
ios开发中如何控制屏幕旋转

ios开发中如何控制屏幕旋转

作者: songjk | 来源:发表于2021-06-01 15:32 被阅读0次

1.设置app支持的屏幕方向

在info.plist中指定支持的方向或者在appDelegate中设置
// 如何在info.plist中设置app支持的方向
info中设置方向.png
// 如何在appDelegate中设置app支持的方向
// 如果不重写该方法 会默认使用info.plist中的设置
- (UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
    {
        if (all) {
            return UIInterfaceOrientationMaskAll;
        }
        return UIInterfaceOrientationMaskPortrait;
        
    }

2.单独设置控制器支持的方向

// 当设备(不是app)的方向改变时,
// 系统会调用根控制器(比如nav)或者最顶层modal出的控制器的该方法
// 如果控制器的该方法支持新的方向,并且app也支持新的方向,系统会旋转window和控制器
// 系统调用该方法的前提是 shouldAutorotate 方法返回true
// 如果你的app支持多任务,系统不会掉用该方法,因为你的app必须支持所有方向
// 如果不重写该方法,ipad默认返回UIInterfaceOrientationMaskAll,iphone默认返回UIInterfaceOrientationMaskAllButUpsideDown
- (UIInterfaceOrientationMask)supportedInterfaceOrientations
    {
        return UIInterfaceOrientationMaskAllButUpsideDown;
    }

    // 是否允许旋转,如果不重写默认返回true
    - (BOOL)shouldAutorotate
    {
        for (UIViewController *vc in self.childViewControllers) {
            if ([vc isKindOfClass:[你想旋转的控制器 class]]) {
                return YES;
            }
        }
        return NO;
    }

3.在代码中旋转设备方向

 [[UIDevice currentDevice] setValue:@(UIInterfaceOrientationLandscapeRight) forKey:@"orientation"];

4.控制器旋转到设备目前的方向

[UIViewController attemptRotationToDeviceOrientation];

相关文章

  • ios开发中如何控制屏幕旋转

    1.设置app支持的屏幕方向 2.单独设置控制器支持的方向 3.在代码中旋转设备方向 4.控制器旋转到设备目前的方向

  • 屏幕旋转和弹出框

    iOS中控制屏幕旋转相关方法 shouldAutorotate:是否支持屏幕旋转 alertView:clicke...

  • ios控制屏幕旋转及相关问题

    ios控制屏幕旋转及相关问题 测试开发环境: Xcode 11.3语言环境: Swift 5.0 [TOC] 一、...

  • iOS-屏幕旋转截屏相关

    本篇收录各种屏幕旋转知识点等. 1.详解iOS开发中处理屏幕旋转的几种方法2.iOS 个别页面强制横屏,其他页面竖...

  • IOS 屏幕旋转个人总结

    说下IOS屏幕旋转以及相关知识。涉及的知识点有:1、控制控制器方向。2、整套app控制器方向控制。3、屏幕旋转界面...

  • iOS 屏幕旋转控制

    /** 屏幕旋转控制 allowRotateType ==(0强制竖屏,1横竖屏,2~强制横屏 )*/ (UIIn...

  • iOS屏幕旋转控制,极简

    iOS屏幕旋转控制的简单实现,使用方式也非常简单,需要控制旋转的UIViewController遵守ShouldN...

  • iOS Rotation

    iOS屏幕旋转学习笔记iOS开发中使用屏幕旋转功能的相关方法 1、基本知识点解读 了解屏幕旋转首先需要区分两种 o...

  • 屏幕旋转

    屏幕旋转 推荐文档 了解UIWindow——UIWindow实践 iOS屏幕旋转问题总结 IOS:屏幕旋转与变换 ...

  • 关于IOS屏幕旋转的问题

    IOS 开发中,屏幕旋转是比较蛋疼的。网络上有很多的关于屏幕旋转的文章,都比较碎片,而且有些做法还很暴力,并且在应...

网友评论

      本文标题:ios开发中如何控制屏幕旋转

      本文链接:https://www.haomeiwen.com/subject/aivwsltx.html