iPhone - 如何制作 viewControllers 风景?

Posted

技术标签:

【中文标题】iPhone - 如何制作 viewControllers 风景?【英文标题】:iPhone - How do I make viewControllers landscape? 【发布时间】:2011-11-12 22:15:53 【问题描述】:

我有一个 uiNavigationController 和两个 v​​iewController。我遇到的问题是,即使我希望它们是横向的,视图也是以纵向大小生成的!

这是我正在做的事情:

1) 创建 view1 的实例并将其添加到 uiNavigationControllers 堆栈。这是在应用程序委托 didFinishLoadingWithOptions(...) 方法中执行的。

2) view1 有一个按钮,单击该按钮会创建 view2 的实例并将其推送到 uiNavigationControllers 堆栈中。

除了视图是以纵向格式创建的事实之外,这似乎工作正常。一旦我创建了它们的实例,我将使用转换方法手动强制景观,但这感觉真的很hacky。

我确实推测这与“shouldAutorotateToInterfaceOrientation”方法有关,但这是为所有视图控制器中的横向设置的。

我很困惑。

问题 1) 我到底该如何解决这个问题,“hacky transform”方法是唯一的方法吗?

问题 2)这是使用 navigationController 的正确方法吗?我是 iPhone 编程新手。我想要的只是两个可以在它们之间单击的风景视图,除了风景位之外,这似乎还可以做到这一点^^。

【问题讨论】:

【参考方案1】:

我找到了这个问题的答案。

导航控制器确实为其堆栈中的每个视图继承了 shouldAuthorateToInterfaceOrierntation 方法,但是我犯了一个错误:)

将 navController 添加到主窗口后,我没有删除默认情况下将 rootController 视图添加到主窗口的部分。有某种冲突阻止了我的导航控制器按预期工作 - 删除该行修复了所有问题。

【讨论】:

以上是关于iPhone - 如何制作 viewControllers 风景?的主要内容,如果未能解决你的问题,请参考以下文章

像 Facebook Iphone 应用程序一样滑动 ViewController 动画 [重复]

iPhone:如何使用 UI 图形 PushContext

奇怪的 ViewControllers - iPhone SDK

在 iPhone 编程中传递 Inter-ViewController 参数...如何?

如何在 iPhone sdk 中从 ViewController 绘制一个矩形

如何通过单击 iPhone 故事板中的 ActionSheet 按钮移动到下一个 viewController