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
首先要在我们项目的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
相关文章推荐
- 蓝牙,WiFi(一)
- IOS 无障碍开发指导
- Xcode 7.3 自定义类无法自动联想的解决办法
- 正确使用iOS常量(const)、enum以及宏(#define)(收藏)
- iOS不得姐项目--TabBar的重复点击实现当前模块刷新;状态栏点击实现当前模块回滚到最顶部
- iOS 技术提高方法
- iOS CGColorGetComponents
- iOS中日期和字符串的相互转化(时间戳)
- 【iOS开发】利用dispatch_once创建单例
- iOS加急审核
- [译] Animating text layers using CoreAnimation and CoreText frameworks in iOS SDK
- 关于BIOS的一点东西
- IOS开发 控制器强制转换为横屏
- iOS8系统H264视频硬件编解码说明
- 正确使用iOS常量(const)、enum以及宏(#define)
- iOS iOS7以上设置leftBarButtonItem后滑动返回实效
- iOS 为label添加中划线 下划线(商品打折)
- 【iOS开发】棘手BUG
- IOS 时间和时间戳之间转化
- iOS Xcode报错exc_bad access code=exc_1386_gpflt处理