奇妙な問題に遭遇しました。解決の助けが必要です。私のアプリは常に縦向きモードで実行されます - 私は明示的にそのようにしたいと思っています。アプリの 1 か所に、期待どおりに正常に動作する UIWebView があります。この Web ビューは常に表示されるわけではありませんが、メイン ビューに動的に追加され、ユーザーの操作に基づいて削除されます (つまり、必要な場合にのみ表示されます)。
さて、時々このビューで私はYouTubeビデオを持っているかもしれません. WebView には<iframe>
、YouTube 埋め込み用の が含まれているだけです。ユーザーが Web ビューのビデオ プレビュー フレームをクリックすると、フルスクリーンのビデオ ビューアが起動してビデオが再生されますが、これは問題ありません。
ただし、再生中にユーザーが電話を回転させると、フルスクリーンのビデオ プレーヤーが回転し、ビデオが横向きモードで再生されます。ビデオが停止し、ユーザーが電話を縦向きモードに戻さずに「完了」ボタンを押すと、ビデオプレーヤーが閉じられ、ユーザーはアプリに戻りますが、レイアウトも回転します! ビデオ ビューだけでなく、レイアウト全体 (ツールバー、ナビゲーション コントローラーなど) も含まれます。
ローテーションしたくない!アプリ内のすべてをポートレート モードのままにしたいだけです。さらに、電話を縦向きに戻しても、アプリは横向きのままです。
現在、テストする物理的な電話がないため、これまでシミュレーターでのみテストしたことに注意してください。問題を示すために、単純な (低品質!) ビデオ (古い電話カメラで画面上のシミュレーターを撮影しただけ) を作成しました - ビデオはこちら: http://shchuka.com/hosting/rotation_problem.mp4
私がそれについて何ができるか考えていますか?