1

スタンドアロンのUINavigationBarを使用しています.1つのボタンは、左側のサイドメニューを切り替えます。それは完璧に動作します。スタンドアロンのUINavigationBarとMFMailComposeViewController

今、私はMFMailComposeViewControllerを使用して電子メールのフィードバックフォームを追加したかったのです。それは表示され、すべてのフィールド(To、Subject、Body)を編集することができますが、「送信」したいときはボタンが反応しません。 「キャンセル」をクリックすると、基になるUINavigationBarボタンの機能がトリガーされます。私のUINavigationBarが電子メール作成ダイアログのNavigationBarの「上」にあるかのようですが、電子メール作成ダイアログしか表示されません。

MFMailComposeViewControllerが他のすべての上にあることを確認する方法はありますか?

おかげ

+2

どのようにUINavigationBarを追加していますか、どのようにメールコンポーザーをプレゼンテーションしていますか? – jrturton

+0

メール作曲家を紹介するために使用しているコードを教えてください。 – fbernardo

+0

コードを表示するのは難しいです。ビューがロードされ、次にMFMailComposeViewControllerが起動するサブビューを持つ親ビューがあります。親ビューにはUINavigationBar(XIBにドラッグ&ドロップ)があります。 MFMailComposeViewControllerのコードは、次のように非常に単純です。 - (IBAction)btnSendEmailPressed:(id)送信者{ MFMailComposeViewController * controller = [[MFMailComposeViewController alloc] init]; controller.mailComposeDelegate = self; [コントローラのsetToRecipients:[NSArray arrayWithObject:@ "MYEMAILADDRESS"]]; – Joseph

答えて

2

私はあなたが良いですselfにデリゲートを、設定している参照が、あなたはまた、次のメソッドを実装していますか?

私は、コンプリーションビューコントローラーを解除せずに何とか処理していると思いますか?

私はまた、次の行変更しようとするだろう:あなたはナビゲーションバーを使用している場合は、あなたのビューコントローラのから提示しようとし、その後、言ったように、

[self.navigationController presentModalViewController:controller animated:YES]; 

:これまで

[self presentModalViewController:controller animated:YES]; 

を代わりにnabコントローラ。

これは、あなたのView ControllerのwantsFullscreenLayoutとの奇妙なやり取りのようなものかもしれません。あなたのペン先の接続をすべてダブルチェックしてください。まだ動作していない場合は、別の "テスト"ビューコントローラーを押してみてください。あなたのコードやペン先には何かがあり、MFMailComposeViewControllerではないかもしれません。

関連する問題