我有一个通用应用程序,支持iPad中的所有方向,只支持iPhone / iPod中的potrait。我的代码看起来有点像这样:
@implementation UIViewController ( interfaceOrientationHack )
- (void) shouldAutorotateToInterfaceOrientation: ( UIInterfaceOrientation ) toInterfaceOrientation {
if( iPad ) {
return YES;
} else if( toInterfaceOrientation == UIInterfaceOrientationPotrait ) {
return YES;
} else return NO;
}
@end
从我的一个控制器中,我启动导航控制器作为模态视图控制器
[ self presentModalViewController: c animated: YES ];
目前的问题是,模态控制器在方向上正确启动,但是当我改变方向时,模态控制器不会改变其方向,所有其余的控制器都能正常运行。
任何帮助都将非常感激。提前谢谢。
答案 0 :(得分:0)
从UIViewcontroller类引用:“默认情况下,UIViewController类仅以纵向模式显示视图。要支持其他方向,必须覆盖shouldAutorotateToInterfaceOrientation:方法,并为子类支持的任何方向返回YES。如果您的自动调整属性视图配置正确,这可能就是你所要做的。“
由于你的模态视图继承自UIViewcontroller,你必须在模态视图中覆盖shouldAutorotateToInterfaceOrientation :.