メール コンポーザをモーダルに表示すると、問題なく動作します (ここでは、MFMailComposeViewController* _mailer);
[self presentModalViewController:_mailer animated:YES];
ただし、ビューを現在のビューに追加すると、
[self.view addSubview: _mailer.view];
コンポーザ ビューは、ウィンドウの一番上まで移動しません。MFMailComposer
ビューの上部とステータス バーの間に数行のギャップがあります。
モーダル プレゼンテーションの代わりにビューを追加したい理由は、タブ バーを使用していて、それを覆い隠したくないからです。[あなたは自問するかもしれません.なぜ彼はコンポーザーウィンドウをタブバーに直接接続しないのですか? その理由はMFMailComposer
、タブから起動されたワークフローの一部であるが、コンポーザ ビューから開始されないためです]。
Apple のドキュメントには次のように書かれています。
このビュー コントローラーによって管理されるビューを表示するには、ビューコントローラーを表示するための標準的な手法のいずれかを使用できます。
上部にギャップがある理由や、メール コンポーザーをうまく動作させる方法について、誰か考えがありますか?