您的位置:首页 > 移动开发 > IOS开发

iOS 项目中,特定页面强制横屏

2016-05-30 14:45 555 查看
一般情况下,一个项目要么可以横屏要么不可以横屏,但是也有些APP不是这样的,整个项目只支持竖屏但是需要加载游戏界面或者是必须横屏播放视频之类的,就要强制把某些页面设置为横屏:

首先要在我们项目的AppDelegate.h里边定义一个变量来设定屏幕的横屏或是竖屏

@property(nonatomic,assign)NSInteger rotation_Style;

然后在AppDelegate.m里边重写方法:

 - (UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow
*)window

 {

       if (_rotation_Style ==
1) {//如果是1就让屏幕强制横屏

               return
UIInterfaceOrientationMaskLandscapeRight|UIInterfaceOrientationMaskLandscapeLeft;

             }

        else

             {

                    return (UIInterfaceOrientationMaskPortrait);

             }

 }

然后在需要强制横屏的页面导入AppDelegate.h头文件

然后两句代码:

AppDelegate * appDelegate = (AppDelegate *)[UIApplication
sharedApplication].delegate;

    appDelegate.rotation_Style =
1;

搞定!

当然,如果就这样,那么会出问题的,就是你返回上个页面,上个页面就会抽风一样也是横屏了:

所以在返回的方法中也加上两句代码:

AppDelegate * appDelegate = (AppDelegate *)[UIApplication
sharedApplication].delegate;

    appDelegate.rotation_Style =
3;//这里可以随便写,只要不是1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: