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

iOS横屏应用的设置

2013-04-01 17:07 274 查看
众所周知,iOS APP默认支持四个方向,即Portrait、PortraitUpsideDown、LandscapeLeft、LandscapeRight。在有些画图类、游戏类应用中,需要限制APP仅支持横屏或仅支持竖屏,这就需要在程序中禁止支持其他两个方向。下面以横屏应用为例介绍一下如何进行设置(xcode版本为4.6.1):

首先,在项目的info.plist中去掉竖屏的两个方向,保留横屏方向,如下图所示



然后,在项目中的UINavigationController子类中添加如下代码

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft ||

interfaceOrientation == UIInterfaceOrientationLandscapeRight );
}

对于仅支持横屏的应用,需要注意下面的问题:

iOS模拟器有个在viewDidLoad时,不论你模拟器的方向是什么方向,它默认一开始总是Portrait竖屏,因此width跟height也是竖屏的数值。

解决方法:一种方法是通过view的autoresizingMask属性对width以及height进行设置,设备转向时能够保证这些view的width、height按照竖屏的标准来调整;另一种方法是直接在viewDidLoad中不使用autoresizingMask,而是交换width和height的值,再按照横屏去布局。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: