只允许使用tabbars和UInavigationcontrollers的orientationPortrait?

时间:2012-10-23 15:51:48

标签: ios uinavigationcontroller uitabbarcontroller uiinterfaceorientation

在我的应用程序中,我想要它的一些幻灯片只允许orientationPortrait。问题是我无法在Xcode中禁用横向模式。我已经尝试了下面的内容,并在幻灯片中的故事板中设置了肖像。我所理解的是,如果你的课程连接到标签栏和导航控制器,它可能不会听“标准命令”?在这种情况下,我可以做什么才能禁用除肖像之外的所有方向?

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{

return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

1 个答案:

答案 0 :(得分:1)

如果要限制旋转给定视图控制器的能力,则使用shouldAutoroateToInterfaceOrientation处于正确的轨道上。我个人更喜欢更清晰的UIInterfaceOrientationIsPortrait()方法直接比较,虽然我本质上没有看到你做了什么错。

-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{
    return UIInterfaceOrientationIsPortrait(interfaceOrientation);
}

要记住的事情,以及我认为可能存在的问题是你需要在每个想要限制旋转的视图控制器中使用此方法。我将创建一个包含上述代码和子类的主viewcontroller类它贯穿整个计划来解决这个问题。

但是,这并不能阻止程序在横向模式下启动。为此,您需要进入Info.plist文件并将“初始界面方向”值更改为纵向。如果这样可以解决您的问题,或者是否是其他似乎导致问题的问题,请告诉我。