我知道如何控制UINavigationController的自动旋转,但我想以编程方式将UINavigationController:导航栏和视图堆栈旋转到指定的UIInterfaceOrientation值,而不管当前的设备方向如何。
这可能吗?
由于
答案 0 :(得分:0)
首先,将应用程序/视图控制器设置为仅使用一个特定方向(即阻止自动旋转)。
然后,您可以使用仿射变换旋转底层视图图层(UIView.layer
类型的CALayer
)。
答案 1 :(得分:-1)
在UINavigationController内部的视图控制器中实现- shouldAutorotateToInterfaceOrientation:
,只返回所需方向的YES。例如,UINavigationController仅显示在横向上:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return UIInterfaceOrientationIsLandscape(interfaceOrientation);
}
愿这有帮助。