-1

私の普遍的なアプリケーションでインターフェイスの向きを変更できません。それはナビゲーションコントローラを持っています。私は、ナビゲーションコントローラにビューコントローラを追加し、ナビゲーションコントローラのビューをウィンドウに追加しました。ナビゲーションコントローラを削除し、ビューコントローラのビューをサブビューとしてウィンドウに追加すると、方向が認識されますが、ナビゲーションコントローラのビューを追加すると、インターフェイスの向きは変更されません。参考にしてください。以下は私のコードです。 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {インターフェイスの向きが自動的に変更されない

if ([self.view isKindOfClass:[UINavigationController class]]) { 
    UIViewController *rootController = [((UINavigationController*)self.view).viewControllers objectAtIndex:0]; 
     return [rootController shouldAutorotateToInterfaceOrientation:interfaceOrientation]; 
    } 
return YES; 

} 
+2

質問に関連するコードを含めるとお手伝いします。 –

答えて

2

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientationメソッドをオーバーライドしてください。デフォルトでは、UIViewControllerはポートレートモードでのみyesを返します。

+0

ありがとうございます。だから私は、UINavigationController.Canのためにこのメソッドをオーバーライドする必要があります私はそれのための任意の参照を得る? – jessy

関連する問題