1

Main ViewController から呼び出している ViewController を作成しました。私はviewControllerを正常に表示できますが、私の問題は、実際には横向きモードで作成したのに縦向きモードになることです。読み込んでいる viewController は、メイン アプリケーションから呼び出す別の .xib ファイルに作成されます。これを呼び出すために使用するコードは次のとおりです。

- (void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {

    NSLog(@"I was touched.");

    _nextView = [[NextLandscapeViewController alloc] initWithNibName:@"NextLandscapeViewController" bundle:nil];
    [_nextView setDelegate:(id)self];
    UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:_nextView];
    [self presentViewController:navigationController animated:YES completion:nil];

}

私を混乱させているのは、IBの「属性インスペクター」で.xibファイルのビューの「方向」属性を横に設定しているにもかかわらず、縦モードで表示されていることです。なんで?誰かが私が間違っていることを見ることができますか?

返信してくれたすべての人に事前に感謝しますか?

4

1 に答える 1

1

NextLandscapeViewController で以下のメソッドを使用する必要がある場合があります

-(BOOL)shouldAutorotate
{
    return YES;
}

-(NSUInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskLandscape;
}

コントロールが View Controller のこれらのメソッドに到達しない場合は、Navigation Controller をサブクラス化する必要があります。

于 2013-08-23T20:06:01.600 に答える