屏幕旋转的那些事

屏幕旋转一般有三种方式:

第一种、系统自带的自动旋转,只需要在Xcode - General设置即可

General

第二种、 UI层面的旋转,某个控制器的View的旋转,其实这是一种假象,只是设置View的transform,把View.center= [UIApplication sharedApplication].keyWindow.center , 重写View的Frame即可,在返回的时候需设置回来


全屏


非全屏

第三种、是让控制器旋转,这里需要在APPdelegate里面定义一个BOOL值,增加方法如图

APP delegate.m

在相应的控制器里刚开始的地方设置这个BOOL值,

设置BOOL值

最后在点击全屏的方法里分别设置,

全屏


非全屏

在全屏和非全屏时需要重写控件的Frame,当然,在全屏按钮那里可以增加旋转动画,到此你会发现功能已经实现,但是,状态栏没了,天哪,怎么会出现这种事情,不禁一咯噔。。。。。

通过查阅资料发现,在iOS7 时旋转屏幕,状态栏是有的,在iOS8之后,旋转之后默认状态栏是隐藏的,这就需要设置View controller-bar status bar appearance = NO.

同时在appdelegate里面设置一下状态栏就OK搞定收工!!!

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

推荐阅读更多精彩内容

  • 1,Search Bar 怎样去掉背景的颜色(storyboard里只能设置background颜色,可是发现cl...
    以德扶人阅读 2,426评论 2 50
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,916评论 25 708
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,196评论 4 61
  • 拖延症患者,从来都是奴隶,先是懒惰的奴隶,后是恐惧的奴隶。嗯,如果不做恐惧的奴隶,就是彻底“死亡”了。 很多事情,...
    一棵荒草阅读 431评论 0 0
  • 吉林阿未阅读 1,152评论 0 2