アプリの向きを正しく動作させるのに問題があります。簡単に言うと、アプリ内で切り替える 2 つのビュー コントローラーがあります。ViewControllerA縦向きまたは上下逆さまにのみ表示する必要があります。ViewControllerB4つの向きのいずれかで表示できます。
これはかなり簡単なようです。shouldAutorotate正確な方法はわかりませんでしたが、 、shouldAutorotateToInterfaceOrientation:、をいじるだけで、supportedInterfaceOrientations必要なものが得られるはずだと考えました。何らかの理由で、 のインターフェイスの向きinfo.plistがビュー コントローラーのコードを完全にオーバーライドしています。ポートレートのみを許可info.plistし、ビューコントローラーのすべてを許可すると、回転しません。そして、呼び出される唯一のメソッドはsupportedInterfaceOrientations(私が返すUIInterfaceOrientationMaskAll)です。同様に、 ですべての向きを許可info.plistすると、デバイスを回転させると viewController も回転しますが、私のコードでは縦向きではない向きを許可していません。
何が間違っているのか本当にわかりません。誰かが助けて、ViewControllerA、ViewControllerB、および でどの方向を選択する必要があるかについて、私の方向コードがどのように見えるべきかのスニペットを見せてくださいinfo.plist。ありがとう!