xcode两个uitabbarcontrollers一页。自动旋转问题

时间:2012-01-07 01:18:04

标签: xcode uitabbarcontroller autorotate

综述

  1. 我有一个自定义的UITabBarAutoRotateController,它从shouldAutorotateToInterfaceOrientation返回YES。这没有效果。
  2. 如果我最小化并再次显示应用程序,则轮换问题就会消失。
  3. 如何刷新屏幕以便用户不必这样做(因此旋转再次起作用)?
  4. 详细信息(以图形方式设置,因此无代码):

    我在MainWindow.xib中有两个UITabBarController。我只希望一次展示一个。所以我以图形方式链接rootViewController = tabBarController_name1。还有tabBarController_name2。

    我还会有一个警告MessageBox,供用户选择他们需要的应用程序类型,并根据他们的请求选择一个标签栏控制器(根据客户定义)。现在已经注释掉了。

    当同一个xib上存在两个UITabBarControllers时,Rotation存在一个错误。当我尝试旋转屏幕时,它会在主屏幕按钮(电源按钮查看按钮)所朝向的任何位置保持向上。在显示的活动自定义ViewController上不会调用 HandleOrientationChange

    我认为这是一个错误的原因是因为如果我点击主屏幕按钮(最小化应用程序),然后单击应用程序(将其带回前台),旋转工作完美!

    很抱歉让你读到所有那些mumbo :)。我的真正问题是,“无论如何我可以刷新主窗口或同样的UITabBarController来使旋转工作(不需要程序最小化并显示)”?一个解决方法,如果你愿意的话?

    p.s。出于向后兼容的原因,我无法使用Storyboard。客户将收到此代码/项目。所以我想将它保存在一个图形页面中,而不是隐藏/显示UITabBarItem。

    编辑:two-uitabbarcontrollers-and-autorotationuitabbarcontrollers-and-uinavigationcontrollers都很有帮助,但没有解决“为什么”这个问题发生的问题。对于xcode来说,“noob”在这里:)

1 个答案:

答案 0 :(得分:0)

Tab bar controller inside a navigation controller, or sharing a navigation root view就是答案。不要使用TabBarViewController。作为一个菜鸟,我不太清楚为什么TabBarViewController存在(或者至少没有折旧)。

将两个TabBarViewControllers拖放到同一页面中会产生一个警告,说明您可能希望通过创建自定义UIViewController并将简单的UITabBar附加到它来实现TabBarViewController。

令人沮丧......但终于取得了进展:)