可能重复:
横向模式仅适用于 iPhone 或 iPad
我正在制作一个仅限 iPad 的应用程序,我只想在整个过程中保持横向。
我对 iOS 编程非常陌生,并且正在使用 StoryBoard 方法来创建界面。
当我第一次设置应用程序时,我选择了一个视图并单击按钮使其仅是横向的。我发现这只会让它以横向启动,但不会阻止用户手动旋转。
所以,我发现我必须这样做:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
if (interfaceOrientation == UIDeviceOrientationLandscapeLeft || interfaceOrientation == UIDeviceOrientationLandscapeRight)
{
return YES;
}
return NO;
}
为了防止用户手动旋转它。
现在,我创建了一个导航控制器和一个设置为根视图控制器的常规视图。我还在该视图中添加了一个按钮。
我的问题是我的应用程序似乎仅在第一次启动时是横向的(字面意思是闪烁横向),但随后仅在导航控制器中是纵向的。
我还发现为导航控制器和 Storyboard 界面中的第一个视图控制器选择了“方向:横向”。
即使我将设备旋转到横向,应用程序也不会旋转。即使所有设置仅适用于横向,它似乎也停留在纵向。
如何使我的应用程序仅横向而不是其当前的纵向状态?
编辑:我实际上找到了自己的解决方案。
似乎链接到导航控制器的视图未链接到仅设置横向代码的类文件。
我所做的只是在 Storyboard 界面中选择 View Controller,单击右侧边栏上的“Show Identity Inspector”按钮并将类设置为我的 ViewController 文件的名称,其中代码:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft || interfaceOrientation == UIInterfaceOrientationLandscapeRight);
}
曾是。
简而言之,我的视图控制器没有链接到视图控制器类文件。