多くの状況でコントローラーを回転させる必要があり、機能していません。現在、問題の逆があります。回転していて、無効にしたいのです。
そのViewControllerには次のものがあります:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait || interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown);
}
ただし、この UIViewController が要求されるのではなく、UI ツリー内の親が要求されるため、自動回転です。多分それが問題です。ルート コントローラーは、すべてのケースで Yes を返す必要があります。これは、Portait/Landscape をサポートしている/持っている必要があるスタック上にいくつかの他の UIViewControllers があるためです。
他の部分に触れられない/触れたくない理由は...いくつかの理由があります。たとえば、アプリが巨大で、多くの既知のバグがあり、1つを作成して1つテストしたくありません週、その他は締め切りです。
このようなものであってはならず、書き直さなければならないなどと提案しないでください。知っている。
Portait を強制するためにこのコントローラーを処理するにはどうすればよいですか?
太字のテキストもお読みください。アプリ全体で 1 つのビュー コントローラーに対して Portait のみをサポートするように強制することはできません。多数のビュー コントローラーがスタックに存在します。