0

我正在创建具有 4 个选项卡的 Tabbar 应用程序,我的 FirstTabView 应该支持所有方向,并且所有 3 个 tabView 应该只支持纵向,当我将选项卡更改为 SecondTabView 时,它应该强制将方向更改为纵向,这在我使用的故事板中是否可能在下面FirstTabView.m 的代码

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

在 SecondTabView.m 中

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

提前感谢它不允许任何选项卡视图支持横向。

4

3 回答 3

1

在 iOS 5 或更早版本上,每个相应选项卡的 viewController 必须从 shouldAutorotateToInterfaceOrientation 返回 YES 以使 tabBarController 自动旋转,而不仅仅是当前可见的。

于 2012-10-18T06:36:35.827 回答
0

如果你在 iOS6 上遇到这个问题 在 iOS6 中,Apple 改变了管理设备方向的方式。Apple 在其文档中引入了许多新方法。在其文档中所做的更改之一是

 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation

苹果已经在 iOS6 版本中弃用了这个方法。所以这个方法将来可以从苹果文档中删除。如果你想管理设备方向。那么你应该实现 iOS6 中引入的新方法。你应该看看 iOS6 版本中所做的更改。 关联

我发布了一些代码,你可以试试那个。这很容易实现。

请通过此链接

我想它可能会帮助你。

于 2012-10-20T20:51:33.903 回答
0

是的。故事板是可能的。为此,您需要检查选择了哪个选项卡。您可以使用

- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController;

在此应用条件为您想要定向的第一个视图控制器。在那里设置您的方向或将其应用到单独的视图控制器中。

享受编程。

于 2012-10-18T06:39:00.793 回答