如果視圖添加到窗口,則即使設備處於橫向,方向也會設置爲縱向。 如果在應用程序委託中添加視圖,則應用程序: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