iOS_关于手机支持的屏幕方向

设置支持的屏幕方向有两个级别,一个是app级别的,另一个是viewController级别的。

app 级别的可以在[target]-[general]-[device orientation]里面设置,如下图:

默认情况下Upside Down没有勾选,其他都勾选了。
(为什么Upside Down不推荐勾选呢,因为iPhone的电话app是不支持Upside Down的,如果你的app支持Upside Down,万一用户在用你的app的时候Upside Down了,这时候来了电话,就会看到整个来电的画面是颠倒的,用户体验很不好。一向注重用户体验的苹果是不推荐你勾选Upside Down的)

viewController级别的就是在各个viewController里面设置了。
这里有一点需要注意,viewController的设置受app级别设置的限制,也就是viewController能够设置的屏幕方向只能是在app级别中勾选的一种或多种,没有勾选的是不能设置的。比如上面的Upside Down没有勾选,那么viewController也就不能设置Upside Down的方向。

那么在viewController里面怎么设置屏幕方向呢?
iOS6以前:
[objc] view plain copy
// 设置屏幕只支持竖向

  • (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
    {
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
    }

从iOS6开始,上面的方法已经被抛弃,有了3个新的方法:
[objc] view plain copy 在CODE上查看代码片派生到我的代码片
// 不支持屏幕旋转

  • (BOOL)shouldAutorotate
    {
    return NO;
    }

// 只支持竖向

  • (NSUInteger)supportedInterfaceOrientations{
    return UIInterfaceOrientationPortrait;
    }

// 画面一开始加载时就是竖向
// - (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation {
// return UIInterfaceOrientationPortrait;
// }

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

相关阅读更多精彩内容

  • [这是第11篇] 导语: iOS App中大多数页面是只展示竖屏下的效果,但是少部分页面需要支持横竖屏。本文分别介...
    南华coder阅读 14,888评论 18 93
  • 1、UIDeviceOrientation 设备的物理方向 简介UIDeviceOrientation即我们手持的...
    MrJ的杂货铺阅读 28,064评论 8 75
  •   从大体上,我将沟通分为正式沟通和非正式沟通两类。我们工作中通常会有一些正式的沟通比如会议,邮件。但实际上正式会...
    智客_尚无极阅读 5,712评论 0 2
  • 作为一个自诩有点中文素养的女性我一直以来就很喜欢看简奥斯汀的作品,特别是她的《傲慢与偏见》,记得刚接触这本...
    最远的星阅读 4,874评论 1 4
  • 梅雨季节,上班途中,撞上大雨。不巧今天穿了件百叶裙,到公司裙摆湿了一片。 开始处理每天的工作。工作强奸了你,要么你...
    灵君阅读 1,423评论 1 1

友情链接更多精彩内容