5

ViewControllerの iPad でシングルを回転させる方法ios6。デリゲートを使用しました

appdelegate.m

- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
{
    return UIInterfaceOrientationMaskPortrait;
}

それはすべてのポートレートになり、ランドスケープモードでのみ中間にviewcontroller1つ欲しい.viewcontroller

graphViewController.m で

- (BOOL)shouldAutorotate
{
    return NO;
}

- (NSUInteger)supportedInterfaceOrientations {
    return UIInterfaceOrientationMaskLandscape;
}

しかし、正しい結果を得ることができません。できるだけ早く応答してください。ありがとう。

4

2 に答える 2

3

このリンクを参照してくださいiOS6リリースノート

UIKit の下 -> 自動回転が iOS 6 で変更されています

「より多くの責任がアプリとアプリ デリゲートに移されています。現在、iOS コンテナー (UINavigationController など) は、自動回転する必要があるかどうかを判断するために、子に相談しません。」

shouldAutorotate は、別のコントローラー (UINavigationController など) 内にある UIViewController では (iOS6 では) 呼び出されません。

UINavigationController の shouldAutorotate メソッド (使用する場合) を使用して、どの子が表示されているかを判断し、特定の向きを強制する必要があります。

于 2012-11-29T13:45:37.073 に答える
0

アプリdelegate.mではなく回転させたいviewControllerでこのメソッドを使用しました

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // Return YES for supported orientations
    return UIInterfaceOrientationIsLandscape(interfaceOrientation);
}

以下の方法では、ウィンドウを回転させているため、アプリケーション全体でウィンドウが変更されます。

- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
{
    return UIInterfaceOrientationMaskPortrait;
}
于 2012-11-29T13:44:30.263 に答える