2016-05-07 6 views
1

特定のビューコントローラをランドスケープとポートレートに設定するにはどうしたらいいですか?ありがとう。特定のView ControllerをLandscapeとPortraitに設定するにはどうすればいいですか? (iOS)

+0

をチェックアウト私は、あなたのアプリがランドスケープモードとポートレートをサポートしていますか、それが唯一のポートレートモードをサポートしているかどうかを知ることができますか? – Madhu

+0

アプリはポートレートをサポートしていますが、一部のビューはポートレートとランドスケープである必要があります –

答えて

1

1)「一般」タブの「展開情報」から、プロジェクトに必要な「デバイスの向き」を選択します。あなたのビューコントローラクラスで

2)、このコードを使用:あなたは両方の向きをサポートするビューコントローラの場合

- (UIInterfaceOrientationMask) supportedInterfaceOrientations { 

    return UIInterfaceOrientationMaskPortrait; 

} 

3):

- (UIInterfaceOrientationMask) supportedInterfaceOrientations { 

    return UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskLandscape; 

} 
+0

私は問題があります。向きを正しく設定しましたが、別のランドスケープコントローラからpotraitコントローラへモーダルで表示します。 –

+0

@ TOP10NEWS - このリンクがあなたを助けることができるかどうかを確認してください。http://stackoverflow.com/a/27561781/6080920 –

2

ステップ1のサブクラスを作成します。 CustomNavControllerのような名前のUINavigationcontroller ステップ2. AppdDelegateでUINavigationControllerの代わりにCustomNavControllerを初期化します。 CustomNavController

でUINavigationControllerの方法あなたは、両方のモードで必要ViewAssetは、クラスの名前です
-(NSUInteger) supportedInterfaceOrientations 
{ 

    if([NSStringFromClass([[[self viewControllers] lastObject] class]) isEqualToString:@"ViewAsset"]){ 
     return UIInterfaceOrientationMaskAll; 
    } 

    return UIInterfaceOrientationMaskPortrait; 
} 

-(BOOL)shouldAutorotate 
{ 
    return YES; 
} 

ステップ3.オーバーライド。もっと面白いチュートリアル用

https://appengineer.in/

+0

オリエンテーションを正しく設定するには問題がありますが、別のランドスケープコントローラからpotraitコントローラにモーダル表示すると、ランドスケープが表示されます。 –

関連する問題