我正在开发使用两个视图控制器A和B的ios应用程序。当B仅处于纵向模式时,A支持横向和纵向两种方向。我的目标是当我从A导航到B时,B viewcontroller始终只处于纵向模式。我对navigationcontroller中的B viewcontroller进行了限制。
- (BOOL)shouldAutorotate
{
_navigation = (MBNavigationController *) self.frontViewController;
id currentViewController = [_navigation visibleViewController];
if ([currentViewController isKindOfClass:[MBViewController class]])
return NO;
return YES;
}
当A处于纵向方向并且我导航到B时一切正常。但是当A处于横向模式并且我也这样做时,B控制器视图的一部分就是场景。请帮我找到合适的解决方案。
答案 0 :(得分:0)
一种可能的解决方案是将B viewController与另一个导航控制器一起呈现在其中
// sysversion>=ios6
- (BOOL)shouldAutorotate
{
return NO;
}
// sysversion<=ios5
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return NO;
}
- (NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskPortrait;
}