在tabbarcontroller iOS 6中支持morenavigationcontroller和children viewcontroller中的所有方向

时间:2012-11-01 11:48:08

标签: rotation ios6 tabbarcontroller

我有一个tabbar应用程序。我通过将标签栏控制器设置为窗口根视图控制器,然后通过子类别覆盖navigationcontroller和tabbacontroller的行为来修改标签的方向(虽然不推荐)。  现在,除了更多导航控制器及其子视图控制器之外,所有选项卡都可以使用方向。我知道问题是设备旋转通知没有传递给Tab栏控制器中morenavigationcontroller里面的子视图控制器。 此外,更多的navigationcontroller是readonly属性。

我的问题是我想在morenavigationcontroller和子视图控制器中支持所有方向。现在shoulautorotate里面没有调用morenavigation控制器的子视图控制器。

1 个答案:

答案 0 :(得分:1)

在iOS 6之后,Apple改变了应用程序中的方向。请看下面的帖子。这是非常有帮助的

Tabbar controller with navigationcontrollers orientation ios 6

或者您可以制作自定义tabbarcontroller并实现以下方法

-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // You do not need this method if you are not supporting earlier iOS Versions
    return [self.selectedViewController shouldAutorotateToInterfaceOrientation:interfaceOrientation];
}

-(NSUInteger)supportedInterfaceOrientations
{
    return [self.selectedViewController supportedInterfaceOrientations];
}

-(BOOL)shouldAutorotate
{
    return YES;
}