以编程方式旋转UINavigationController

时间:2012-03-02 02:38:27

标签: iphone ios uinavigationcontroller

我知道如何控制UINavigationController的自动旋转,但我想以编程方式将UINavigationController:导航栏和视图堆栈旋转到指定的UIInterfaceOrientation值,而不管当前的设备方向如何。

这可能吗?

由于

2 个答案:

答案 0 :(得分:0)

首先,将应用程序/视图控制器设置为仅使用一个特定方向(即阻止自动旋转)。

然后,您可以使用仿射变换旋转底层视图图层(UIView.layer类型的CALayer)。

答案 1 :(得分:-1)

在UINavigationController内部的视图控制器中实现- shouldAutorotateToInterfaceOrientation:,只返回所需方向的YES。例如,UINavigationController仅显示在横向上:

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

愿这有帮助。