【发布时间】:2013-05-27 12:52:21
【问题描述】:
我有 UITabBarController 的子类来处理轮换问题:
-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{
return YES;
}
-(NSUInteger)supportedInterfaceOrientations{
return [self.selectedViewController supportedInterfaceOrientations];
}
-(BOOL)shouldAutorotate{
return YES;
}
现在从tabbatcontroller 中的UIViewController 之一,我提出了一个新的UIViewController:
MainVC *mainVC = [[MainVC alloc] initWithNibName:@"MainVC" bundle:nil];
UINavigationController *mainNav = [[UINavigationController alloc] initWithRootViewController:mainVC];
radioNav.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:mainNav animated:YES];
在这个新的导航中,我想禁用自动旋转并只允许纵向:
-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{
return NO;
}
-(NSUInteger)supportedInterfaceOrientations{
return UIInterfaceOrientationMaskPortrait;
}
-(BOOL)shouldAutorotate{
return NO;
}
但是旋转仍然有效,当我旋转屏幕时,应用程序转到横向屏幕,我该如何解决这个问题?
【问题讨论】:
-
您需要每次检查当前设备方向或设备状态栏起源:- 请检查我的答案:- stackoverflow.com/questions/16710899/…
标签: iphone ios objective-c uitabbarcontroller