iOS设备旋转支持横屏

1、修改工程的info.plist中"Supported interface orientations"的值(一般在工程的Taget-> General -> Deployment Info -> Device Orientation处打钩来选择设备支持)。

2、实现工程的AppDelegate文件中的(application:supportedInterfaceOrientationsForWindow:)方法,在此方法中返回程序支持的方向枚举。

3、实现某个ViewController支持旋转在iOS6.0以后可以通过以下2个方法:

- (BOOL)shouldAutorotate{ // 是否支持旋转
    return YES;
}
- (NUInteger)supportedInterfaceOrientations{       // 支持旋转的方向
    returnUIInterfaceOrientationMaskPortrait;
}

扩展:
如果程序界面要求只支持竖屏,但是工程中webView弹出的视频要求支持横屏播放,可以结合以上提到的第1、2中方式来解决。解决方法:修改工程info.plist值,使其只支持Portrait方向;然后实现application:supportedInterfaceOrientationsForWindow:方法,在此方法中返回UIInterfaceOrientationMaskAllButUpsideDown值。这样即使在iPhone6P或ipad上横屏启动程序,界面也不会出现横屏的现象,而在iPhone设备上视频播放仍然支持横屏。解决以上问题引发的猜测:通过修改info.plist来使设备支持各个方向,使[UIScreen mainScreen].bounds获取的屏幕的宽高值也相应的改变了。 实现
application:supportedInterfaceOrientationsForWindow:方法来支持各个方向,并不会改变[UIScreen mainScreen].bounds对应的宽高值。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • iOS 知识小集(横竖屏切换) 转载自 http://www.cocoachina.com/ios/2016072...
    Poison_19ce阅读 3,873评论 0 0
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,073评论 19 139
  • 1.强制应用为横屏的方法。在view contronller中的实现 (NSUInteger)supportedI...
    the宇亮阅读 3,153评论 0 0
  • 当太阳沉进山坳的时候 我躲起来静悄悄的拥抱 咖啡比不上茶有滋味 我却只喝得起最廉价的白开水 妈妈 我不再哭泣也不...
    李小歪阅读 1,877评论 8 13
  • 在朋友的眼里,我的意志是高于孩子的意志的,理由就是我给孩子报特长班时,不太尊重孩子的意见。我的朋友则会弯下...
    安然我心阅读 3,693评论 0 0

友情链接更多精彩内容