【问题标题】:Landscape mode for Xcode using storyboard使用情节提要的 Xcode 横向模式
【发布时间】:2012-05-13 09:39:01
【问题描述】:

我正在为 Zoo 制作一个应用程序,它非常简单,但是因为起初我尝试使用代码并使用 xcode 3.2 来制作它,但我遇到了一些问题,所以我从 Xcode 4.3 开始并正在尝试它与故事板。

我的问题是,如何将所有应用程序置于横向模式?我的意思是我已经在 infoplist 中设置了:初始界面方向,然后在 .m 文件中我更改了以下内容:

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

但它不起作用。当我添加一个 tabbarcontroller 并链接它时,所有的视图都变成了纵向的。如果我旋转第一个,它确实给了我风景,但所有其他人总是纵向的,那我该怎么办?

【问题讨论】:

  • 使用UITabBarController时,其中所有viewControllers,必须支持你想要的方向。这意味着,他们都必须为景观返回 YES。你有考虑到这一点吗?
  • @Canopus 所说的,以及 UINavigationController 包含的视图控制器也是如此。
  • 实际上我只有一个类,所有内容都由故事板链接,所以我是否也必须为标签栏控制器创建一个类??我的意思是它工作正常,只是界面方向的这个问题。
  • 感谢大家的关注。
  • 如果您的所有视图控制器都在故事板中,并且它们都链接到UITabBarController(如@Till 所说,包括UIViewControllers 和UINavigationControllers),那么是的,您需要将它们全部子类化,以便覆盖 -shouldAutorotateToInterfaceOrientation: 方法并为支持的方向返回 yes。

标签: iphone ios xcode4 uiinterfaceorientation uistoryboard


【解决方案1】:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return interfaceOrientation==UIInterfaceOrientationLandscapeRight;
}

【讨论】:

    【解决方案2】:

    当您在情节提要上添加标签栏控制器时,在标签栏的属性检查器中,您有默认推断的方向,将其更改为横向。但是最好将方向从项目的摘要选项卡设置为横向右。它可以让您在正确的风景中出现。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-08-25
      • 2011-12-09
      • 2012-11-11
      • 2013-11-30
      • 1970-01-01
      • 1970-01-01
      • 2012-06-18
      相关资源
      最近更新 更多