在我们的iOS项目中,时常会碰到某个界面需要支持横竖屏切换,比如优酷播放视频的时候,从竖屏切换到了横屏,在比如某个查看pdf文件的界面支持横竖屏转换....当然,有的项目需求也可能是某个界面进来就是横屏的(这也叫做强制横屏)...好了,废话不说,这篇文章主要实现两个问题:
1.某个界面支持横竖屏切换,其他界面只能竖屏
2.某个界面强制横屏,其他界面只能竖屏
先来解决第一个问题:
一. 某个界面支持横竖屏切换,其他界面只能竖屏.
横竖屏的切换要经过手机同意才行,所以将手机得竖排方向锁定关闭……
1.打开xcode,让项目支持横竖屏
2.在Appdelegate.h 里面写一个属性Rotate
![这里写图片描述](https://img-blog.csdn.net/20160928155441115)
3.在Appdelegate.m的
- (BOOL)application:(UIApplication )application didFinishLaunchingWithOptions:(NSDictionary )launchOptions {
return YES;
} 方法中初始化Rotate属性
4.在Appdelegate.m中添加以下两个方法
写到这儿,我们基本上大功告成了,但是运行起来App,我们发现,需要横竖屏切换的界面确实完美了,但是在横屏的状态下,点击返回按钮,我们发现,,前面的界面都变成横屏的了,这是我们所不希望的..于是…
6.在viewWillDisappear方法里面在加上一下这段代码:
7.最后,需要注意的事,需要横竖屏切换的界面要做好适配,否则横竖屏的UI便会丑的没法看.
本人做了一个示范:
二 .某个界面强制横屏,其他界面只能竖屏
其实晚上了横竖屏切换的问题,强制横屏就显得特别简单了,我们只需要在上面的基础上做两个步骤就可以大功告成了.
1.打开手机设备或者模拟器的竖排方向锁定.
2.在需要强制横屏界面的viewWillAppear方法里面添加以下代码:
本篇博客就先写到这里感谢朋友们的大力支持!