Ios 旋转父视图控制器(如果从NavigationController显示viewController)
我在我的应用程序中使用了一个Ios 旋转父视图控制器(如果从NavigationController显示viewController),ios,Ios,我在我的应用程序中使用了一个NavigationController,从那里,我将弹出一个viewController。因此,如果我旋转设备,我可以旋转topView(显示viewController),但无法旋转导航控制器顶部的父视图控制器 我需要有关发生这种情况的原因和解决方法的指导。如果您的父视图控制器(显示视图控制器)不是可见视图控制器,则在父视图控制器中永远不会调用旋转方法(-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfa
NavigationController
,从那里,我将弹出一个viewController
。因此,如果我旋转设备,我可以旋转topView(显示viewController
),但无法旋转导航控制器顶部的父视图控制器
我需要有关发生这种情况的原因和解决方法的指导。如果您的父视图控制器(显示视图控制器)不是可见视图控制器,则在父视图控制器中永远不会调用旋转方法(
-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
)(显示视图控制器)。因此,您应该根据状态栏方向显式旋转视图控制器。但是,当您关闭显示视图控制器时,将在父视图控制器中调用viewWillLayoutSubviews方法。请在那里执行操作
在父视图控制器中:
- (void)viewWillLayoutSubviews
{
//Check your your view controller is visible. If not visible then call
[self willRotateToInterfaceOrientation:[[UIApplication sharedApplication] statusBarOrientation] duration:0];
}