2

navスタックに追加されたView Controller(xyzと呼びましょう)からのモーダルとしてMFMailComposeViewControllerを提示しています。ユーザーがキャンセル ボタンをクリックすると、MFMailComposeViewController が閉じられます。これは、縦/横モードで xyz がナビゲーション スタックに追加され、キャンセルをクリックするまでデバイスの向きが変わらない場合に正常に機能します。

現在のモーダル - ボタンのタップ時に init MFMailComposeViewController を割り当てます

[self.navigationController presentModalViewController:mailController animated:NO];

モーダルを閉じる - mailComposeController: didFinishWithResult: エラー

[self.navigationController dismissModalViewControllerAnimated:YES];

xyz が表示されてからメール ビュー コントローラーがキャンセルされるまでの間に方向が変わると、xyz の方向が予期せず変化します。

例えば:

  1. デバイスの向きの縦向き
  2. ボタンタップ時の pushViewController xyz
  3. デバイスの向きを横向きに変更すると、すべてのビューが期待どおりに回転します
  4. 現在のMFMailComposeViewController
  5. ランドスケープモードで表示されたメールコントローラー
  6. キャンセルをタップするか、メールを送信してください
  7. xyz の向きが 90 度回転しました (予期しない) - 想定: xyz の向きは変更されません。

何が起こっているのかわかりません。どんな助けでも大歓迎です。

4

0 に答える 0