ナビゲーションコントローラに2つのビューコントローラが組み込まれています。最初のビューコントローラは回転できますが、2番目のビューコントローラは常にポートレートモードで開く必要があります私は最初のビューコントローラで風景モードです。私はポートレートでのみ2番目のビューを開きます。View Controllerをポートレートモードで常に開くようにする方法
最初からsegueを押して2番目のビューコントローラを表示します。
ナビゲーションコントローラに2つのビューコントローラが組み込まれています。最初のビューコントローラは回転できますが、2番目のビューコントローラは常にポートレートモードで開く必要があります私は最初のビューコントローラで風景モードです。私はポートレートでのみ2番目のビューを開きます。View Controllerをポートレートモードで常に開くようにする方法
最初からsegueを押して2番目のビューコントローラを表示します。
あなたは二VC(肖像画)を提示する直前に呼び出して二VC
にshouldAutorotate
を実装する必要があります
if([UIDevice currentDevice].orientation == UIDeviceOrientationLandscapeLeft || [UIDevice currentDevice].orientation == UIDeviceOrientationLandscapeRight) {
[[UIDevice currentDevice] setValue:[NSNumber numberWithInteger: UIInterfaceOrientationPortrait] forKey:@"orientation"];
}
解決策1:カスタムUINavigationControllerのサブクラスを作成し、このように、これらのメソッドをオーバーライドします:
@interface LockedNavigationViewController()
@end
@implementation LockedNavigationViewController
-(BOOL)shouldAutorotate {
return UIInterfaceOrientationMaskPortrait;
}
#if __IPHONE_OS_VERSION_MAX_ALLOWED < 90000
- (NSUInteger)supportedInterfaceOrientations
#else
- (UIInterfaceOrientationMask)supportedInterfaceOrientations
#endif
{
return UIInterfaceOrientationMaskPortrait;
}
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation {
return UIInterfaceOrientationPortrait;
}
@end
あなたがウルAppDelegateクラスでこのメソッドを使用してブールVAR
-(NSUInteger) application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window {
if(self.isDisplayInPoratrait){
return UIInterfaceOrientationMaskPortrait;
else
// return ur required orientation
}
self.isDisplayInPoratrait
を維持することができますがuは肖像画の中に存在するクラスでAppDelagate
設定し、この変数そうで宣言されたブール変数です。 uは
-(BOOL)shouldAutorotate {
return NO;
}
-(UIInterfaceOrientationMask)supportedInterfaceOrientations {
return UIInterfaceOrientationMaskPortrait;
}
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation {
return UIInterfaceOrientationLandscapeLeft;
}
の可能性のある重複[ポートレートモードに滞在するビューコントローラを強制する方法?](http://stackoverflow.com/questions/16720968/how-to肖像に提示するワンクラスでこのメソッドを配置-force-view-portrait-in-portrait-mode) –
[iOS 6でUIViewControllerをポートレート向きに強制する方法](http://stackoverflow.com/questions/12520030/how-to) -force-a-uiviewcontroller-to-portait-orientation-in-ios-6) – kb920