iOS不勾选设置,实现某个界面强制横屏


 1、在不勾选横屏的前提下,实现某一个界面横屏显示,比如播放视频、图表显示等。

 

2、只能Present跳转,Push会无效。

3、实现代码

     在需要横屏的VC里,添加如下代码     

#pragma mark 强制横屏(针对present方式)
- (BOOL) shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
    return (UIInterfaceOrientationLandscapeRight | UIInterfaceOrientationLandscapeLeft);
}

- (UIInterfaceOrientationMask)supportedInterfaceOrientations {
    return UIInterfaceOrientationMaskLandscapeRight | UIInterfaceOrientationMaskLandscapeLeft;
}

//必须有
-(UIInterfaceOrientation)preferredInterfaceOrientationForPresentation{
    return UIInterfaceOrientationLandscapeRight;
}

  

4、最终效果

 

5、其他补充描述

- 这样设置后,当前页面的坐标原点会变成横屏下的左上角,所以适配规则要按照这个来做。

- 横屏下状态栏是看不到的,这是系统默认实现。

- 这种方式,即使手机本身设置了禁止旋转,也是可以旋转的,所以也是强制旋转。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM