如果视图添加到窗口,则即使设备处于横向,方向也会设置为纵向。 如果在应用程序委托中添加视图,则应用程序:didFinishLaunchingWithOptions:方法,然后它可以正常工作。但如果视图稍后添加,它不会。更改UIWindow子视图时,未设置方向
作为一个例子,我有一个例程来切换视图。最简单的形式是:
- (void)switchToNewViewController:(UIViewController *)newViewController {
if ([[window subviews]count]!=0) {
[[[window subviews]objectAtIndex:0] removeFromSuperview];
}
[window addSubview:newViewController.view];
}
如果在didFinishLaunching中调用此方法,则方向是正确的。如果不是,则方向是纵向。
简单的情况是内didFinishLaunching我有以下两行
// The following line works
[self switchToNewViewController:fullScreenViewController];
// The following line which delays the method call until later results
// in incorrect orientation
[self performSelector:@selector(switchToNewViewController:) withObject:fullScreenViewController afterDelay:0.1];
有没有一种方法,使视图有正确的方向?
你是否设法解决这个问题? – pt2ph8 2010-11-19 16:12:26